1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
--TEST--
MongoDB\Driver\Manager::__construct(): auto encryption options
--SKIPIF--
<?php require __DIR__ . "/../utils/basic-skipif.inc"; ?>
<?php skip_if_appveyor(); /* AppVeyor does not have mongocryptd installed */ ?>
<?php skip_if_not_libmongocrypt(); ?>
--FILE--
<?php
$baseOptions = [
'keyVaultNamespace' => 'admin.dataKeys',
'kmsProviders' => ['aws' => (object) ['accessKeyId' => 'abc', 'secretAccessKey' => 'def']]
];
$tests = [
[],
['keyVaultClient' => new MongoDB\Driver\Manager()],
['schemaMap' => [
'default.default' => [
'properties' => [
'encrypted_objectId' => [
'encrypt' => [
'keyId' => [
[
'$binary' => [
'base64' => 'AAAAAAAAAAAAAAAAAAAAAA==',
'subType' => '04',
],
],
],
'bsonType' => 'objectId',
'algorithm' => MongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC,
],
],
],
'bsonType' => 'object',
],
]],
['bypassAutoEncryption' => true],
['extraOptions' => ['mongocryptdBypassSpawn' => true]],
];
foreach ($tests as $autoEncryptionOptions) {
$manager = new MongoDB\Driver\Manager(null, [], ['autoEncryption' => $autoEncryptionOptions + $baseOptions]);
}
?>
===DONE===
<?php exit(0); ?>
--EXPECT--
===DONE===
|