Skip to content

Commit 49955ab

Browse files
authored
CDRIVER-5779 Sync migrated unified tests and client bulkWrite QE test (#2113)
1 parent 5cb30b9 commit 49955ab

File tree

98 files changed

+58942
-22
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+58942
-22
lines changed

src/libmongoc/tests/json/client_side_encryption/unified/aggregate.json

Lines changed: 433 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 313 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,313 @@
1+
{
2+
"description": "awsTemporary",
3+
"schemaVersion": "1.25",
4+
"runOnRequirements": [
5+
{
6+
"minServerVersion": "4.1.10",
7+
"csfle": {
8+
"minLibmongocryptVersion": "1.15.1"
9+
}
10+
}
11+
],
12+
"createEntities": [
13+
{
14+
"client": {
15+
"id": "client0",
16+
"autoEncryptOpts": {
17+
"keyVaultNamespace": "keyvault.datakeys",
18+
"kmsProviders": {
19+
"aws": {
20+
"accessKeyId": {
21+
"$$placeholder": 1
22+
},
23+
"secretAccessKey": {
24+
"$$placeholder": 1
25+
},
26+
"sessionToken": {
27+
"$$placeholder": 1
28+
}
29+
}
30+
}
31+
},
32+
"observeEvents": [
33+
"commandStartedEvent"
34+
]
35+
}
36+
},
37+
{
38+
"database": {
39+
"id": "db",
40+
"client": "client0",
41+
"databaseName": "default"
42+
}
43+
},
44+
{
45+
"collection": {
46+
"id": "coll",
47+
"database": "db",
48+
"collectionName": "default"
49+
}
50+
},
51+
{
52+
"client": {
53+
"id": "client1",
54+
"autoEncryptOpts": {
55+
"keyVaultNamespace": "keyvault.datakeys",
56+
"kmsProviders": {
57+
"aws": {
58+
"accessKeyId": {
59+
"$$placeholder": 1
60+
},
61+
"secretAccessKey": {
62+
"$$placeholder": 1
63+
},
64+
"sessionToken": "bad"
65+
}
66+
}
67+
},
68+
"observeEvents": [
69+
"commandStartedEvent"
70+
]
71+
}
72+
},
73+
{
74+
"database": {
75+
"id": "db1",
76+
"client": "client1",
77+
"databaseName": "default"
78+
}
79+
},
80+
{
81+
"collection": {
82+
"id": "coll1",
83+
"database": "db1",
84+
"collectionName": "default"
85+
}
86+
}
87+
],
88+
"initialData": [
89+
{
90+
"databaseName": "default",
91+
"collectionName": "default",
92+
"documents": [],
93+
"createOptions": {
94+
"validator": {
95+
"$jsonSchema": {
96+
"properties": {
97+
"encrypted_w_altname": {
98+
"encrypt": {
99+
"keyId": "/altname",
100+
"bsonType": "string",
101+
"algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
102+
}
103+
},
104+
"encrypted_string": {
105+
"encrypt": {
106+
"keyId": [
107+
{
108+
"$binary": {
109+
"base64": "AAAAAAAAAAAAAAAAAAAAAA==",
110+
"subType": "04"
111+
}
112+
}
113+
],
114+
"bsonType": "string",
115+
"algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
116+
}
117+
},
118+
"random": {
119+
"encrypt": {
120+
"keyId": [
121+
{
122+
"$binary": {
123+
"base64": "AAAAAAAAAAAAAAAAAAAAAA==",
124+
"subType": "04"
125+
}
126+
}
127+
],
128+
"bsonType": "string",
129+
"algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Random"
130+
}
131+
},
132+
"encrypted_string_equivalent": {
133+
"encrypt": {
134+
"keyId": [
135+
{
136+
"$binary": {
137+
"base64": "AAAAAAAAAAAAAAAAAAAAAA==",
138+
"subType": "04"
139+
}
140+
}
141+
],
142+
"bsonType": "string",
143+
"algorithm": "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic"
144+
}
145+
}
146+
},
147+
"bsonType": "object"
148+
}
149+
}
150+
}
151+
},
152+
{
153+
"databaseName": "keyvault",
154+
"collectionName": "datakeys",
155+
"documents": [
156+
{
157+
"status": 1,
158+
"_id": {
159+
"$binary": {
160+
"base64": "AAAAAAAAAAAAAAAAAAAAAA==",
161+
"subType": "04"
162+
}
163+
},
164+
"masterKey": {
165+
"provider": "aws",
166+
"key": "arn:aws:kms:us-east-1:579766882180:key/89fcc2c4-08b0-4bd9-9f25-e30687b580d0",
167+
"region": "us-east-1"
168+
},
169+
"updateDate": {
170+
"$date": {
171+
"$numberLong": "1552949630483"
172+
}
173+
},
174+
"keyMaterial": {
175+
"$binary": {
176+
"base64": "AQICAHhQNmWG2CzOm1dq3kWLM+iDUZhEqnhJwH9wZVpuZ94A8gEqnsxXlR51T5EbEVezUqqKAAAAwjCBvwYJKoZIhvcNAQcGoIGxMIGuAgEAMIGoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDHa4jo6yp0Z18KgbUgIBEIB74sKxWtV8/YHje5lv5THTl0HIbhSwM6EqRlmBiFFatmEWaeMk4tO4xBX65eq670I5TWPSLMzpp8ncGHMmvHqRajNBnmFtbYxN3E3/WjxmdbOOe+OXpnGJPcGsftc7cB2shRfA4lICPnE26+oVNXT6p0Lo20nY5XC7jyCO",
177+
"subType": "00"
178+
}
179+
},
180+
"creationDate": {
181+
"$date": {
182+
"$numberLong": "1552949630483"
183+
}
184+
},
185+
"keyAltNames": [
186+
"altname",
187+
"another_altname"
188+
]
189+
}
190+
]
191+
}
192+
],
193+
"tests": [
194+
{
195+
"description": "Insert a document with auto encryption using the AWS provider with temporary credentials",
196+
"operations": [
197+
{
198+
"name": "insertOne",
199+
"arguments": {
200+
"document": {
201+
"_id": 1,
202+
"encrypted_string": "string0"
203+
}
204+
},
205+
"object": "coll"
206+
}
207+
],
208+
"outcome": [
209+
{
210+
"documents": [
211+
{
212+
"_id": 1,
213+
"encrypted_string": {
214+
"$binary": {
215+
"base64": "AQAAAAAAAAAAAAAAAAAAAAACwj+3zkv2VM+aTfk60RqhXq6a/77WlLwu/BxXFkL7EppGsju/m8f0x5kBDD3EZTtGALGXlym5jnpZAoSIkswHoA==",
216+
"subType": "06"
217+
}
218+
}
219+
}
220+
],
221+
"collectionName": "default",
222+
"databaseName": "default"
223+
}
224+
],
225+
"expectEvents": [
226+
{
227+
"client": "client0",
228+
"events": [
229+
{
230+
"commandStartedEvent": {
231+
"command": {
232+
"listCollections": 1,
233+
"filter": {
234+
"name": "default"
235+
}
236+
},
237+
"commandName": "listCollections"
238+
}
239+
},
240+
{
241+
"commandStartedEvent": {
242+
"command": {
243+
"find": "datakeys",
244+
"filter": {
245+
"$or": [
246+
{
247+
"_id": {
248+
"$in": [
249+
{
250+
"$binary": {
251+
"base64": "AAAAAAAAAAAAAAAAAAAAAA==",
252+
"subType": "04"
253+
}
254+
}
255+
]
256+
}
257+
},
258+
{
259+
"keyAltNames": {
260+
"$in": []
261+
}
262+
}
263+
]
264+
},
265+
"$db": "keyvault"
266+
},
267+
"commandName": "find"
268+
}
269+
},
270+
{
271+
"commandStartedEvent": {
272+
"command": {
273+
"insert": "default",
274+
"documents": [
275+
{
276+
"_id": 1,
277+
"encrypted_string": {
278+
"$binary": {
279+
"base64": "AQAAAAAAAAAAAAAAAAAAAAACwj+3zkv2VM+aTfk60RqhXq6a/77WlLwu/BxXFkL7EppGsju/m8f0x5kBDD3EZTtGALGXlym5jnpZAoSIkswHoA==",
280+
"subType": "06"
281+
}
282+
}
283+
}
284+
],
285+
"ordered": true
286+
},
287+
"commandName": "insert"
288+
}
289+
}
290+
]
291+
}
292+
]
293+
},
294+
{
295+
"description": "Insert with invalid temporary credentials",
296+
"operations": [
297+
{
298+
"name": "insertOne",
299+
"arguments": {
300+
"document": {
301+
"_id": 1,
302+
"encrypted_string": "string0"
303+
}
304+
},
305+
"object": "coll1",
306+
"expectError": {
307+
"errorContains": "security token"
308+
}
309+
}
310+
]
311+
}
312+
]
313+
}

0 commit comments

Comments
 (0)