|
27 | 27 | import java.util.HashMap;
|
28 | 28 | import java.util.Map;
|
29 | 29 |
|
| 30 | +import static com.mongodb.internal.capi.MongoCryptHelper.isMongocryptdSpawningDisabled; |
30 | 31 | import static com.mongodb.internal.capi.MongoCryptHelper.validateRewrapManyDataKeyOptions;
|
31 | 32 | import static java.util.Collections.emptyList;
|
32 | 33 | import static java.util.Collections.emptyMap;
|
33 | 34 | import static java.util.Collections.singletonList;
|
| 35 | +import static java.util.Collections.singletonMap; |
34 | 36 | import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
|
35 | 37 | import static org.junit.jupiter.api.Assertions.assertEquals;
|
| 38 | +import static org.junit.jupiter.api.Assertions.assertFalse; |
36 | 39 | import static org.junit.jupiter.api.Assertions.assertThrows;
|
| 40 | +import static org.junit.jupiter.api.Assertions.assertTrue; |
37 | 41 |
|
38 | 42 | public class MongoCryptHelperTest {
|
39 | 43 |
|
@@ -104,6 +108,29 @@ public void validateRewrapManyDataKeyOptionsTest() {
|
104 | 108 | assertThrows(MongoClientException.class, () -> validateRewrapManyDataKeyOptions(new RewrapManyDataKeyOptions().masterKey(new BsonDocument())));
|
105 | 109 | }
|
106 | 110 |
|
| 111 | + @Test |
| 112 | + public void isMongocryptdSpawningDisabledTest() { |
| 113 | + assertTrue(isMongocryptdSpawningDisabled(null, |
| 114 | + initializeAutoEncryptionSettingsBuilder().bypassAutoEncryption(true).build())); |
| 115 | + assertTrue(isMongocryptdSpawningDisabled(null, |
| 116 | + initializeAutoEncryptionSettingsBuilder().bypassQueryAnalysis(true).build())); |
| 117 | + assertTrue(isMongocryptdSpawningDisabled(null, |
| 118 | + initializeAutoEncryptionSettingsBuilder().extraOptions(singletonMap("cryptSharedLibRequired", true)).build())); |
| 119 | + assertTrue(isMongocryptdSpawningDisabled("/path/to/shared/lib.so", |
| 120 | + initializeAutoEncryptionSettingsBuilder().build())); |
| 121 | + assertFalse(isMongocryptdSpawningDisabled(null, |
| 122 | + initializeAutoEncryptionSettingsBuilder().build())); |
| 123 | + assertFalse(isMongocryptdSpawningDisabled("", |
| 124 | + initializeAutoEncryptionSettingsBuilder().build())); |
| 125 | + } |
| 126 | + |
| 127 | + private static AutoEncryptionSettings.Builder initializeAutoEncryptionSettingsBuilder() { |
| 128 | + AutoEncryptionSettings.Builder builder = AutoEncryptionSettings.builder() |
| 129 | + .keyVaultNamespace("test.vault") |
| 130 | + .kmsProviders(singletonMap("local", singletonMap("key", new byte[96]))); |
| 131 | + return builder; |
| 132 | + } |
| 133 | + |
107 | 134 | void assertMongoCryptOptions(final MongoCryptOptions expected, final MongoCryptOptions actual) {
|
108 | 135 | assertEquals(expected.getAwsKmsProviderOptions(), actual.getAwsKmsProviderOptions(), "AwsKmsProviderOptions not equal");
|
109 | 136 | assertEquals(expected.getEncryptedFieldsMap(), actual.getEncryptedFieldsMap(), "EncryptedFieldsMap not equal");
|
|
0 commit comments