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 "encrypted_string": {
13 "$binary": {
14 "base64": "AQAAAAAAAAAAAAAAAAAAAAACwj+3zkv2VM+aTfk60RqhXq6a/77WlLwu/BxXFkL7EppGsju/m8f0x5kBDD3EZTtGALGXlym5jnpZAoSIkswHoA==",
15 "subType": "06"
16 }
17 }
18 }
19 ],
20 "json_schema": {
21 "properties": {
22 "encrypted_w_altname": {
23 "encrypt": {
24 "keyId": "/altname",
25 "bsonType": "string",
26 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
27 }
28 },
29 "encrypted_string": {
30 "encrypt": {
31 "keyId": [
32 {
33 "$binary": {
34 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
35 "subType": "04"
36 }
37 }
38 ],
39 "bsonType": "string",
40 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
41 }
42 },
43 "random": {
44 "encrypt": {
45 "keyId": [
46 {
47 "$binary": {
48 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
49 "subType": "04"
50 }
51 }
52 ],
53 "bsonType": "string",
54 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
55 }
56 },
57 "encrypted_string_equivalent": {
58 "encrypt": {
59 "keyId": [
60 {
61 "$binary": {
62 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
63 "subType": "04"
64 }
65 }
66 ],
67 "bsonType": "string",
68 "algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
69 }
70 }
71 },
72 "bsonType": "object"
73 },
74 "key_vault_data": [
75 {
76 "status": 1,
77 "_id": {
78 "$binary": {
79 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
80 "subType": "04"
81 }
82 },
83 "masterKey": {
84 "provider": "aws",
85 "key": "arn:aws:kms:us-east-1:579766882180:key/89fcc2c4-08b0-4bd9-9f25-e30687b580d0",
86 "region": "us-east-1"
87 },
88 "updateDate": {
89 "$date": {
90 "$numberLong": "1552949630483"
91 }
92 },
93 "keyMaterial": {
94 "$binary": {
95 "base64": "AQICAHhQNmWG2CzOm1dq3kWLM+iDUZhEqnhJwH9wZVpuZ94A8gEqnsxXlR51T5EbEVezUqqKAAAAwjCBvwYJKoZIhvcNAQcGoIGxMIGuAgEAMIGoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDHa4jo6yp0Z18KgbUgIBEIB74sKxWtV8/YHje5lv5THTl0HIbhSwM6EqRlmBiFFatmEWaeMk4tO4xBX65eq670I5TWPSLMzpp8ncGHMmvHqRajNBnmFtbYxN3E3/WjxmdbOOe+OXpnGJPcGsftc7cB2shRfA4lICPnE26+oVNXT6p0Lo20nY5XC7jyCO",
96 "subType": "00"
97 }
98 },
99 "creationDate": {
100 "$date": {
101 "$numberLong": "1552949630483"
102 }
103 },
104 "keyAltNames": [
105 "altname",
106 "another_altname"
107 ]
108 }
109 ],
110 "tests": [
111 {
112 "description": "replaceOne with encryption",
113 "clientOptions": {
114 "autoEncryptOpts": {
115 "kmsProviders": {
116 "aws": {}
117 }
118 }
119 },
120 "operations": [
121 {
122 "name": "replaceOne",
123 "arguments": {
124 "filter": {
125 "encrypted_string": "string0"
126 },
127 "replacement": {
128 "encrypted_string": "string1",
129 "random": "abc"
130 }
131 },
132 "result": {
133 "matchedCount": 1,
134 "modifiedCount": 1,
135 "upsertedCount": 0
136 }
137 }
138 ],
139 "expectations": [
140 {
141 "command_started_event": {
142 "command": {
143 "listCollections": 1,
144 "filter": {
145 "name": "default"
146 }
147 },
148 "command_name": "listCollections"
149 }
150 },
151 {
152 "command_started_event": {
153 "command": {
154 "find": "datakeys",
155 "filter": {
156 "$or": [
157 {
158 "_id": {
159 "$in": [
160 {
161 "$binary": {
162 "base64": "AAAAAAAAAAAAAAAAAAAAAA==",
163 "subType": "04"
164 }
165 }
166 ]
167 }
168 },
169 {
170 "keyAltNames": {
171 "$in": []
172 }
173 }
174 ]
175 },
176 "$db": "keyvault",
177 "readConcern": {
178 "level": "majority"
179 }
180 },
181 "command_name": "find"
182 }
183 },
184 {
185 "command_started_event": {
186 "command": {
187 "update": "default",
188 "updates": [
189 {
190 "q": {
191 "encrypted_string": {
192 "$eq": {
193 "$binary": {
194 "base64": "AQAAAAAAAAAAAAAAAAAAAAACwj+3zkv2VM+aTfk60RqhXq6a/77WlLwu/BxXFkL7EppGsju/m8f0x5kBDD3EZTtGALGXlym5jnpZAoSIkswHoA==",
195 "subType": "06"
196 }
197 }
198 }
199 },
200 "u": {
201 "encrypted_string": {
202 "$binary": {
203 "base64": "AQAAAAAAAAAAAAAAAAAAAAACDdw4KFz3ZLquhsbt7RmDjD0N67n0uSXx7IGnQNCLeIKvot6s/ouI21Eo84IOtb6lhwUNPlSEBNY0/hbszWAKJg==",
204 "subType": "06"
205 }
206 },
207 "random": {
208 "$$type": "binData"
209 }
210 }
211 }
212 ],
213 "ordered": true
214 },
215 "command_name": "update"
216 }
217 }
218 ],
219 "outcome": {
220 "collection": {
221 "data": [
222 {
223 "_id": 1,
224 "encrypted_string": {
225 "$binary": {
226 "base64": "AQAAAAAAAAAAAAAAAAAAAAACDdw4KFz3ZLquhsbt7RmDjD0N67n0uSXx7IGnQNCLeIKvot6s/ouI21Eo84IOtb6lhwUNPlSEBNY0/hbszWAKJg==",
227 "subType": "06"
228 }
229 },
230 "random": {
231 "$$type": "binData"
232 }
233 }
234 ]
235 }
236 }
237 }
238 ]
239}
View as plain text