bson/testdata/index-management/searchIndexIgnoresReadWriteConcern.yml
2025-03-17 20:58:26 +01:00

147 lines
5.6 KiB
YAML

description: "search index operations ignore read and write concern"
schemaVersion: "1.4"
createEntities:
- client:
id: &client0 client0
useMultipleMongoses: false
# Set a non-default read and write concern.
uriOptions:
readConcernLevel: local
w: 1
observeEvents:
- commandStartedEvent
- database:
id: &database0 database0
client: *client0
databaseName: *database0
- collection:
id: &collection0 collection0
database: *database0
collectionName: *collection0
runOnRequirements:
- minServerVersion: "7.0.0"
topologies: [ replicaset, load-balanced, sharded ]
serverless: forbid
tests:
- description: "createSearchIndex ignores read and write concern"
operations:
- name: createSearchIndex
object: *collection0
arguments:
model: { definition: &definition { mappings: { dynamic: true } } }
expectError:
# This test always errors in a non-Atlas environment. The test functions as a unit test by asserting
# that the driver constructs and sends the correct command.
# The expected error message was changed in SERVER-83003. Check for the substring "Atlas" shared by both error messages.
isError: true
errorContains: Atlas
expectEvents:
- client: *client0
events:
- commandStartedEvent:
command:
createSearchIndexes: *collection0
indexes: [ { definition: *definition } ]
$db: *database0
# Expect no writeConcern or readConcern to be sent.
writeConcern: { $$exists: false }
readConcern: { $$exists: false }
- description: "createSearchIndexes ignores read and write concern"
operations:
- name: createSearchIndexes
object: *collection0
arguments:
models: []
expectError:
# This test always errors in a non-Atlas environment. The test functions as a unit test by asserting
# that the driver constructs and sends the correct command.
# The expected error message was changed in SERVER-83003. Check for the substring "Atlas" shared by both error messages.
isError: true
errorContains: Atlas
expectEvents:
- client: *client0
events:
- commandStartedEvent:
command:
createSearchIndexes: *collection0
indexes: []
$db: *database0
# Expect no writeConcern or readConcern to be sent.
writeConcern: { $$exists: false }
readConcern: { $$exists: false }
- description: "dropSearchIndex ignores read and write concern"
operations:
- name: dropSearchIndex
object: *collection0
arguments:
name: &indexName 'test index'
expectError:
# This test always errors in a non-Atlas environment. The test functions as a unit test by asserting
# that the driver constructs and sends the correct command.
# The expected error message was changed in SERVER-83003. Check for the substring "Atlas" shared by both error messages.
isError: true
errorContains: Atlas
expectEvents:
- client: *client0
events:
- commandStartedEvent:
command:
dropSearchIndex: *collection0
name: *indexName
$db: *database0
# Expect no writeConcern or readConcern to be sent.
writeConcern: { $$exists: false }
readConcern: { $$exists: false }
- description: "listSearchIndexes ignores read and write concern"
operations:
- name: listSearchIndexes
object: *collection0
expectError:
# This test always errors in a non-Atlas environment. The test functions as a unit test by asserting
# that the driver constructs and sends the correct command.
# The expected error message was changed in SERVER-83003. Check for the substring "Atlas" shared by both error messages.
isError: true
errorContains: Atlas
expectEvents:
- client: *client0
events:
- commandStartedEvent:
command:
aggregate: *collection0
pipeline:
- $listSearchIndexes: {}
# Expect no writeConcern or readConcern to be sent.
writeConcern: { $$exists: false }
readConcern: { $$exists: false }
- description: "updateSearchIndex ignores the read and write concern"
operations:
- name: updateSearchIndex
object: *collection0
arguments:
name: &indexName 'test index'
definition: &definition {}
expectError:
# This test always errors in a non-Atlas environment. The test functions as a unit test by asserting
# that the driver constructs and sends the correct command.
# The expected error message was changed in SERVER-83003. Check for the substring "Atlas" shared by both error messages.
isError: true
errorContains: Atlas
expectEvents:
- client: *client0
events:
- commandStartedEvent:
command:
updateSearchIndex: *collection0
name: *indexName
definition: *definition
$db: *database0
# Expect no writeConcern or readConcern to be sent.
writeConcern: { $$exists: false }
readConcern: { $$exists: false }