Skip to content

Commit 51ca03b

Browse files
authored
DRIVERS-2270: Use $$unsetOrMatches for upsert and multi (#1174)
1 parent 6a7158d commit 51ca03b

24 files changed

+188
-73
lines changed

source/crud/tests/unified/bulkWrite-comment.json

+24
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,12 @@
150150
"u": {
151151
"_id": 1,
152152
"x": "replaced"
153+
},
154+
"multi": {
155+
"$$unsetOrMatches": false
156+
},
157+
"upsert": {
158+
"$$unsetOrMatches": false
153159
}
154160
},
155161
{
@@ -160,6 +166,12 @@
160166
"$set": {
161167
"x": "updated"
162168
}
169+
},
170+
"multi": {
171+
"$$unsetOrMatches": false
172+
},
173+
"upsert": {
174+
"$$unsetOrMatches": false
163175
}
164176
}
165177
],
@@ -317,6 +329,12 @@
317329
"u": {
318330
"_id": 1,
319331
"x": "replaced"
332+
},
333+
"multi": {
334+
"$$unsetOrMatches": false
335+
},
336+
"upsert": {
337+
"$$unsetOrMatches": false
320338
}
321339
},
322340
{
@@ -327,6 +345,12 @@
327345
"$set": {
328346
"x": "updated"
329347
}
348+
},
349+
"multi": {
350+
"$$unsetOrMatches": false
351+
},
352+
"upsert": {
353+
"$$unsetOrMatches": false
330354
}
331355
}
332356
],

source/crud/tests/unified/bulkWrite-comment.yml

+8
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,12 @@ tests:
7777
updates:
7878
- q: *replaceOne_filter
7979
u: *replacement
80+
multi: { $$unsetOrMatches: false }
81+
upsert: { $$unsetOrMatches: false }
8082
- q: *updateOne_filter
8183
u: *update
84+
multi: { $$unsetOrMatches: false }
85+
upsert: { $$unsetOrMatches: false }
8286
ordered: true
8387
comment: *string_comment
8488
- commandStartedEvent:
@@ -128,8 +132,12 @@ tests:
128132
updates:
129133
- q: *replaceOne_filter
130134
u: *replacement
135+
multi: { $$unsetOrMatches: false }
136+
upsert: { $$unsetOrMatches: false }
131137
- q: *updateOne_filter
132138
u: *update
139+
multi: { $$unsetOrMatches: false }
140+
upsert: { $$unsetOrMatches: false }
133141
ordered: true
134142
comment: *document_comment
135143
- commandStartedEvent:

source/crud/tests/unified/bulkWrite-replaceOne-let.json

+12
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,12 @@
9595
},
9696
"u": {
9797
"x": 3
98+
},
99+
"multi": {
100+
"$$unsetOrMatches": false
101+
},
102+
"upsert": {
103+
"$$unsetOrMatches": false
98104
}
99105
}
100106
],
@@ -183,6 +189,12 @@
183189
},
184190
"u": {
185191
"x": 3
192+
},
193+
"multi": {
194+
"$$unsetOrMatches": false
195+
},
196+
"upsert": {
197+
"$$unsetOrMatches": false
186198
}
187199
}
188200
],

source/crud/tests/unified/bulkWrite-replaceOne-let.yml

+4
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ tests:
4747
updates:
4848
- q: *filter
4949
u: *replacement
50+
multi: { $$unsetOrMatches: false }
51+
upsert: { $$unsetOrMatches: false }
5052
let: *let
5153
outcome:
5254
- collectionName: *collection0Name
@@ -80,6 +82,8 @@ tests:
8082
updates:
8183
- q: *filter
8284
u: *replacement
85+
multi: { $$unsetOrMatches: false }
86+
upsert: { $$unsetOrMatches: false }
8387
let: *let
8488
outcome:
8589
- collectionName: *collection0Name

source/crud/tests/unified/bulkWrite-update-hint-serverError.yml

+10-20
Original file line numberDiff line numberDiff line change
@@ -79,18 +79,14 @@ tests:
7979
q: *updateOne_filter
8080
u: *updateOne_update
8181
hint: *hint_string
82-
multi:
83-
$$unsetOrMatches: false
84-
upsert:
85-
$$unsetOrMatches: false
82+
multi: { $$unsetOrMatches: false }
83+
upsert: { $$unsetOrMatches: false }
8684
-
8785
q: *updateOne_filter
8886
u: *updateOne_update
8987
hint: *hint_doc
90-
multi:
91-
$$unsetOrMatches: false
92-
upsert:
93-
$$unsetOrMatches: false
88+
multi: { $$unsetOrMatches: false }
89+
upsert: { $$unsetOrMatches: false }
9490
ordered: true
9591
outcome:
9692
-
@@ -148,15 +144,13 @@ tests:
148144
u: *updateMany_update
149145
multi: true
150146
hint: *hint_string
151-
upsert:
152-
$$unsetOrMatches: false
147+
upsert: { $$unsetOrMatches: false }
153148
-
154149
q: *updateMany_filter
155150
u: *updateMany_update
156151
multi: true
157152
hint: *hint_doc
158-
upsert:
159-
$$unsetOrMatches: false
153+
upsert: { $$unsetOrMatches: false }
160154
ordered: true
161155
outcome:
162156
-
@@ -215,20 +209,16 @@ tests:
215209
u:
216210
x: 333
217211
hint: *hint_string
218-
multi:
219-
$$unsetOrMatches: false
220-
upsert:
221-
$$unsetOrMatches: false
212+
multi: { $$unsetOrMatches: false }
213+
upsert: { $$unsetOrMatches: false }
222214
-
223215
q:
224216
_id: 4
225217
u:
226218
x: 444
227219
hint: *hint_doc
228-
multi:
229-
$$unsetOrMatches: false
230-
upsert:
231-
$$unsetOrMatches: false
220+
multi: { $$unsetOrMatches: false }
221+
upsert: { $$unsetOrMatches: false }
232222
ordered: true
233223
outcome:
234224
-

source/crud/tests/unified/bulkWrite-updateMany-let.yml

+1-2
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,7 @@ tests:
8585
- q: *filter
8686
u: *update
8787
multi: true
88-
upsert:
89-
$$unsetOrMatches: false
88+
upsert: { $$unsetOrMatches: false }
9089
let: *let
9190

9291
outcome:

source/crud/tests/unified/replaceOne-comment.json

+18
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@
7575
},
7676
"u": {
7777
"x": 22
78+
},
79+
"multi": {
80+
"$$unsetOrMatches": false
81+
},
82+
"upsert": {
83+
"$$unsetOrMatches": false
7884
}
7985
}
8086
],
@@ -137,6 +143,12 @@
137143
},
138144
"u": {
139145
"x": 22
146+
},
147+
"multi": {
148+
"$$unsetOrMatches": false
149+
},
150+
"upsert": {
151+
"$$unsetOrMatches": false
140152
}
141153
}
142154
],
@@ -202,6 +214,12 @@
202214
},
203215
"u": {
204216
"x": 22
217+
},
218+
"multi": {
219+
"$$unsetOrMatches": false
220+
},
221+
"upsert": {
222+
"$$unsetOrMatches": false
205223
}
206224
}
207225
],

source/crud/tests/unified/replaceOne-comment.yml

+6
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ tests:
4242
-
4343
q: *filter
4444
u: *replacement
45+
multi: { $$unsetOrMatches: false }
46+
upsert: { $$unsetOrMatches: false }
4547
comment: "comment"
4648
outcome: &outcome
4749
- collectionName: *collection0Name
@@ -69,6 +71,8 @@ tests:
6971
-
7072
q: *filter
7173
u: *replacement
74+
multi: { $$unsetOrMatches: false }
75+
upsert: { $$unsetOrMatches: false }
7276
comment: *comment
7377
outcome: *outcome
7478

@@ -94,5 +98,7 @@ tests:
9498
-
9599
q: *filter
96100
u: *replacement
101+
multi: { $$unsetOrMatches: false }
102+
upsert: { $$unsetOrMatches: false }
97103
comment: "comment"
98104
outcome: *initialData

source/crud/tests/unified/replaceOne-hint.yml

+4-8
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,8 @@ tests:
6464
q: *filter
6565
u: *replacement
6666
hint: _id_
67-
multi:
68-
$$unsetOrMatches: false
69-
upsert:
70-
$$unsetOrMatches: false
67+
multi: { $$unsetOrMatches: false }
68+
upsert: { $$unsetOrMatches: false }
7169
outcome: &outcome
7270
-
7371
collectionName: *collection_name
@@ -105,8 +103,6 @@ tests:
105103
u: *replacement
106104
hint:
107105
_id: 1
108-
multi:
109-
$$unsetOrMatches: false
110-
upsert:
111-
$$unsetOrMatches: false
106+
multi: { $$unsetOrMatches: false }
107+
upsert: { $$unsetOrMatches: false }
112108
outcome: *outcome

source/crud/tests/unified/replaceOne-let.json

+12
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,12 @@
9494
},
9595
"u": {
9696
"x": "foo"
97+
},
98+
"multi": {
99+
"$$unsetOrMatches": false
100+
},
101+
"upsert": {
102+
"$$unsetOrMatches": false
97103
}
98104
}
99105
],
@@ -176,6 +182,12 @@
176182
},
177183
"u": {
178184
"x": "foo"
185+
},
186+
"multi": {
187+
"$$unsetOrMatches": false
188+
},
189+
"upsert": {
190+
"$$unsetOrMatches": false
179191
}
180192
}
181193
],

source/crud/tests/unified/replaceOne-let.yml

+4
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@ tests:
5151
-
5252
q: *filter
5353
u: *replacement
54+
multi: { $$unsetOrMatches: false }
55+
upsert: { $$unsetOrMatches: false }
5456
let: *let
5557
outcome:
5658
-
@@ -84,6 +86,8 @@ tests:
8486
-
8587
q: *filter
8688
u: *replacement
89+
multi: { $$unsetOrMatches: false }
90+
upsert: { $$unsetOrMatches: false }
8791
let: *let
8892
outcome:
8993
-

source/crud/tests/unified/updateMany-comment.json

+12-3
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,10 @@
8080
"x": 22
8181
}
8282
},
83-
"multi": true
83+
"multi": true,
84+
"upsert": {
85+
"$$unsetOrMatches": false
86+
}
8487
}
8588
],
8689
"comment": "comment"
@@ -147,7 +150,10 @@
147150
"x": 22
148151
}
149152
},
150-
"multi": true
153+
"multi": true,
154+
"upsert": {
155+
"$$unsetOrMatches": false
156+
}
151157
}
152158
],
153159
"comment": {
@@ -217,7 +223,10 @@
217223
"x": 22
218224
}
219225
},
220-
"multi": true
226+
"multi": true,
227+
"upsert": {
228+
"$$unsetOrMatches": false
229+
}
221230
}
222231
],
223232
"comment": "comment"

source/crud/tests/unified/updateMany-comment.yml

+3
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ tests:
4242
q: *filter
4343
u: *update
4444
multi: true
45+
upsert: { $$unsetOrMatches: false }
4546
comment: "comment"
4647
outcome: &outcome
4748
- collectionName: *collection0Name
@@ -70,6 +71,7 @@ tests:
7071
q: *filter
7172
u: *update
7273
multi: true
74+
upsert: { $$unsetOrMatches: false }
7375
comment: *comment
7476
outcome: *outcome
7577

@@ -96,5 +98,6 @@ tests:
9698
q: *filter
9799
u: *update
98100
multi: true
101+
upsert: { $$unsetOrMatches: false }
99102
comment: "comment"
100103
outcome: *initialData

0 commit comments

Comments
 (0)