...
1description: "BulkWrite replaceOne-let"
2
3schemaVersion: "1.0"
4
5createEntities:
6 - client:
7 id: &client0 client0
8 observeEvents: [ commandStartedEvent ]
9 - database:
10 id: &database0 database0
11 client: *client0
12 databaseName: &database0Name crud-tests
13 - collection:
14 id: &collection0 collection0
15 database: *database0
16 collectionName: &collection0Name coll0
17
18initialData:
19 - collectionName: *collection0Name
20 databaseName: *database0Name
21 documents:
22 - { _id: 1 }
23 - { _id: 2 }
24
25tests:
26 - description: "BulkWrite replaceOne with let option"
27 runOnRequirements:
28 - minServerVersion: "5.0"
29 operations:
30 - object: *collection0
31 name: bulkWrite
32 arguments:
33 requests:
34 - replaceOne:
35 filter: &filter
36 $expr:
37 $eq: [ "$_id", "$$id" ]
38 replacement: &replacement {"x": 3}
39 let: &let
40 id: 1
41 expectEvents:
42 - client: *client0
43 events:
44 - commandStartedEvent:
45 command:
46 update: *collection0Name
47 updates:
48 - q: *filter
49 u: *replacement
50 multi: { $$unsetOrMatches: false }
51 upsert: { $$unsetOrMatches: false }
52 let: *let
53 outcome:
54 - collectionName: *collection0Name
55 databaseName: *database0Name
56 documents:
57 - { _id: 1, x: 3 }
58 - { _id: 2 }
59
60 - description: "BulkWrite replaceOne with let option unsupported (server-side error)"
61 runOnRequirements:
62 - minServerVersion: "4.2"
63 maxServerVersion: "4.9"
64 operations:
65 - object: *collection0
66 name: bulkWrite
67 arguments:
68 requests:
69 - replaceOne:
70 filter: *filter
71 replacement: *replacement
72 let: *let
73 expectError:
74 errorContains: "'update.let' is an unknown field"
75 isClientError: false
76 expectEvents:
77 - client: *client0
78 events:
79 - commandStartedEvent:
80 command:
81 update: *collection0Name
82 updates:
83 - q: *filter
84 u: *replacement
85 multi: { $$unsetOrMatches: false }
86 upsert: { $$unsetOrMatches: false }
87 let: *let
88 outcome:
89 - collectionName: *collection0Name
90 databaseName: *database0Name
91 documents:
92 - { _id: 1 }
93 - { _id: 2 }
View as plain text