bson/testdata/crud/v1/write/findOneAndReplace.yml
2025-03-17 20:58:26 +01:00

114 lines
3.4 KiB
YAML

data:
- {_id: 1, x: 11}
- {_id: 2, x: 22}
- {_id: 3, x: 33}
tests:
-
description: "FindOneAndReplace when many documents match returning the document before modification"
operation:
name: findOneAndReplace
arguments:
filter:
_id: {$gt: 1}
replacement: {x: 32}
projection: {x: 1, _id: 0}
sort: {x: 1}
outcome:
result: {x: 22}
collection:
data:
- {_id: 1, x: 11}
- {_id: 2, x: 32}
- {_id: 3, x: 33}
-
description: "FindOneAndReplace when many documents match returning the document after modification"
operation:
name: findOneAndReplace
arguments:
filter:
_id: {$gt: 1}
replacement: {x: 32}
projection: {x: 1, _id: 0}
returnDocument: After
sort: {x: 1}
outcome:
result: {x: 32}
collection:
data:
- {_id: 1, x: 11}
- {_id: 2, x: 32}
- {_id: 3, x: 33}
-
description: "FindOneAndReplace when one document matches returning the document before modification"
operation:
name: findOneAndReplace
arguments:
filter: {_id: 2}
replacement: {x: 32}
projection: {x: 1, _id: 0}
sort: {x: 1}
outcome:
result: {x: 22}
collection:
data:
- {_id: 1, x: 11}
- {_id: 2, x: 32}
- {_id: 3, x: 33}
-
description: "FindOneAndReplace when one document matches returning the document after modification"
operation:
name: findOneAndReplace
arguments:
filter: {_id: 2}
replacement: {x: 32}
projection: {x: 1, _id: 0}
returnDocument: After
sort: {x: 1}
outcome:
result: {x: 32}
collection:
data:
- {_id: 1, x: 11}
- {_id: 2, x: 32}
- {_id: 3, x: 33}
-
description: "FindOneAndReplace when no documents match returning the document before modification"
operation:
name: findOneAndReplace
arguments:
filter: {_id: 4}
replacement: {x: 44}
projection: {x: 1, _id: 0}
sort: {x: 1}
outcome:
result: null
collection:
data:
- {_id: 1, x: 11}
- {_id: 2, x: 22}
- {_id: 3, x: 33}
-
description: "FindOneAndReplace when no documents match returning the document after modification"
operation:
name: findOneAndReplace
arguments:
filter: {_id: 4}
replacement: {x: 44}
projection: {x: 1, _id: 0}
returnDocument: After
sort: {x: 1}
outcome:
result: null
collection:
data:
- {_id: 1, x: 11}
- {_id: 2, x: 22}
- {_id: 3, x: 33}