bson/testdata/crud/unified/client-bulkWrite-partialResults.yml
2025-03-17 20:58:26 +01:00

263 lines
8.3 KiB
YAML

description: "client bulkWrite partial results"
schemaVersion: "1.4" # To support `serverless: forbid`
runOnRequirements:
- minServerVersion: "8.0"
serverless: forbid
createEntities:
- client:
id: &client0 client0
- database:
id: &database0 database0
client: *client0
databaseName: &database0Name crud-tests
- collection:
id: &collection0 collection0
database: *database0
collectionName: &collection0Name coll0
initialData:
- collectionName: *collection0Name
databaseName: *database0Name
documents:
- &existingDocument { _id: 1, x: 11 }
_yamlAnchors:
namespace: &namespace "crud-tests.coll0"
newDocument: &newDocument { _id: 2, x: 22 }
tests:
- description: "partialResult is unset when first operation fails during an ordered bulk write (verbose)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *existingDocument
- insertOne:
namespace: *namespace
document: *newDocument
ordered: true
verboseResults: true
expectError:
expectResult:
$$unsetOrMatches:
insertedCount: { $$exists: false }
upsertedCount: { $$exists: false }
matchedCount: { $$exists: false }
modifiedCount: { $$exists: false }
deletedCount: { $$exists: false }
insertResults: { $$exists: false }
updateResults: { $$exists: false }
deleteResults: { $$exists: false }
- description: "partialResult is unset when first operation fails during an ordered bulk write (summary)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *existingDocument
- insertOne:
namespace: *namespace
document: *newDocument
ordered: true
verboseResults: false
expectError:
expectResult:
$$unsetOrMatches:
insertedCount: { $$exists: false }
upsertedCount: { $$exists: false }
matchedCount: { $$exists: false }
modifiedCount: { $$exists: false }
deletedCount: { $$exists: false }
insertResults: { $$exists: false }
updateResults: { $$exists: false }
deleteResults: { $$exists: false }
- description: "partialResult is set when second operation fails during an ordered bulk write (verbose)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *newDocument
- insertOne:
namespace: *namespace
document: *existingDocument
ordered: true
verboseResults: true
expectError:
expectResult:
insertedCount: 1
upsertedCount: 0
matchedCount: 0
modifiedCount: 0
deletedCount: 0
insertResults:
0:
insertedId: 2
updateResults: {}
deleteResults: {}
- description: "partialResult is set when second operation fails during an ordered bulk write (summary)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *newDocument
- insertOne:
namespace: *namespace
document: *existingDocument
ordered: true
verboseResults: false
expectError:
expectResult:
insertedCount: 1
upsertedCount: 0
matchedCount: 0
modifiedCount: 0
deletedCount: 0
insertResults:
$$unsetOrMatches: {}
updateResults:
$$unsetOrMatches: {}
deleteResults:
$$unsetOrMatches: {}
- description: "partialResult is unset when all operations fail during an unordered bulk write"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *existingDocument
- insertOne:
namespace: *namespace
document: *existingDocument
ordered: false
expectError:
expectResult:
$$unsetOrMatches:
insertedCount: { $$exists: false }
upsertedCount: { $$exists: false }
matchedCount: { $$exists: false }
modifiedCount: { $$exists: false }
deletedCount: { $$exists: false }
insertResults: { $$exists: false }
updateResults: { $$exists: false }
deleteResults: { $$exists: false }
- description: "partialResult is set when first operation fails during an unordered bulk write (verbose)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *existingDocument
- insertOne:
namespace: *namespace
document: *newDocument
ordered: false
verboseResults: true
expectError:
expectResult:
insertedCount: 1
upsertedCount: 0
matchedCount: 0
modifiedCount: 0
deletedCount: 0
insertResults:
1:
insertedId: 2
updateResults: {}
deleteResults: {}
- description: "partialResult is set when first operation fails during an unordered bulk write (summary)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *existingDocument
- insertOne:
namespace: *namespace
document: *newDocument
ordered: false
verboseResults: false
expectError:
expectResult:
insertedCount: 1
upsertedCount: 0
matchedCount: 0
modifiedCount: 0
deletedCount: 0
insertResults:
$$unsetOrMatches: {}
updateResults:
$$unsetOrMatches: {}
deleteResults:
$$unsetOrMatches: {}
- description: "partialResult is set when second operation fails during an unordered bulk write (verbose)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *newDocument
- insertOne:
namespace: *namespace
document: *existingDocument
ordered: false
verboseResults: true
expectError:
expectResult:
insertedCount: 1
upsertedCount: 0
matchedCount: 0
modifiedCount: 0
deletedCount: 0
insertResults:
0:
insertedId: 2
updateResults: {}
deleteResults: {}
- description: "partialResult is set when second operation fails during an unordered bulk write (summary)"
operations:
- object: *client0
name: clientBulkWrite
arguments:
models:
- insertOne:
namespace: *namespace
document: *newDocument
- insertOne:
namespace: *namespace
document: *existingDocument
ordered: false
verboseResults: false
expectError:
expectResult:
insertedCount: 1
upsertedCount: 0
matchedCount: 0
modifiedCount: 0
deletedCount: 0
insertResults:
$$unsetOrMatches: {}
updateResults:
$$unsetOrMatches: {}
deleteResults:
$$unsetOrMatches: {}