1{
2  "runOn": [
3    {
4      "minServerVersion": "4.1.10"
5    }
6  ],
7  "database_name": "default",
8  "collection_name": "default",
9  "data": [
10    {
11      "_id": 1,
12      "x": 1,
13      "encrypted_string": {
14        "$binary": {
15          "base64": "AQAAAAAAAAAAAAAAAAAAAAACwj+3zkv2VM+aTfk60RqhXq6a/77WlLwu/BxXFkL7EppGsju/m8f0x5kBDD3EZTtGALGXlym5jnpZAoSIkswHoA==",
16          "subType": "06"
17        }
18      }
19    },
20    {
21      "_id": 2,
22      "x": 2,
23      "encrypted_string": {
24        "$binary": {
25          "base64": "AQAAAAAAAAAAAAAAAAAAAAACDdw4KFz3ZLquhsbt7RmDjD0N67n0uSXx7IGnQNCLeIKvot6s/ouI21Eo84IOtb6lhwUNPlSEBNY0/hbszWAKJg==",
26          "subType": "06"
27        }
28      }
29    }
30  ],
31  "json_schema": {
32    "properties": {
33      "encrypted_w_altname": {
34        "encrypt": {
35          "keyId": "/altname",
36          "bsonType": "string",
37          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
38        }
39      },
40      "encrypted_string": {
41        "encrypt": {
42          "keyId": [
43            {
44              "$binary": {
45                "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
46                "subType": "04"
47              }
48            }
49          ],
50          "bsonType": "string",
51          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
52        }
53      },
54      "random": {
55        "encrypt": {
56          "keyId": [
57            {
58              "$binary": {
59                "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
60                "subType": "04"
61              }
62            }
63          ],
64          "bsonType": "string",
65          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
66        }
67      },
68      "encrypted_string_equivalent": {
69        "encrypt": {
70          "keyId": [
71            {
72              "$binary": {
73                "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
74                "subType": "04"
75              }
76            }
77          ],
78          "bsonType": "string",
79          "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
80        }
81      }
82    },
83    "bsonType": "object"
84  },
85  "key_vault_data": [
86    {
87      "status": 1,
88      "_id": {
89        "$binary": {
90          "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
91          "subType": "04"
92        }
93      },
94      "masterKey": {
95        "provider": "aws",
96        "key": "arn:aws:kms:us-east-1:579766882180:key/89fcc2c4-08b0-4bd9-9f25-e30687b580d0",
97        "region": "us-east-1"
98      },
99      "updateDate": {
100        "$date": {
101          "$numberLong": "1552949630483"
102        }
103      },
104      "keyMaterial": {
105        "$binary": {
106          "base64": "AQICAHhQNmWG2CzOm1dq3kWLM+iDUZhEqnhJwH9wZVpuZ94A8gEqnsxXlR51T5EbEVezUqqKAAAAwjCBvwYJKoZIhvcNAQcGoIGxMIGuAgEAMIGoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDHa4jo6yp0Z18KgbUgIBEIB74sKxWtV8/YHje5lv5THTl0HIbhSwM6EqRlmBiFFatmEWaeMk4tO4xBX65eq670I5TWPSLMzpp8ncGHMmvHqRajNBnmFtbYxN3E3/WjxmdbOOe+OXpnGJPcGsftc7cB2shRfA4lICPnE26+oVNXT6p0Lo20nY5XC7jyCO",
107          "subType": "00"
108        }
109      },
110      "creationDate": {
111        "$date": {
112          "$numberLong": "1552949630483"
113        }
114      },
115      "keyAltNames": [
116        "altname",
117        "another_altname"
118      ]
119    }
120  ],
121  "tests": [
122    {
123      "description": "mapReduce deterministic encryption (unsupported)",
124      "clientOptions": {
125        "autoEncryptOpts": {
126          "kmsProviders": {
127            "aws": {}
128          }
129        }
130      },
131      "operations": [
132        {
133          "name": "mapReduce",
134          "arguments": {
135            "map": {
136              "$code": "function inc() { return emit(0, this.x + 1) }"
137            },
138            "reduce": {
139              "$code": "function sum(key, values) { return values.reduce((acc, x) => acc + x); }"
140            },
141            "out": {
142              "inline": 1
143            }
144          },
145          "result": {
146            "errorContains": "command not supported for auto encryption: mapreduce"
147          }
148        }
149      ]
150    }
151  ]
152}
153