50 lines
1.3 KiB
JavaScript
50 lines
1.3 KiB
JavaScript
/**
|
|
* Tests that commands that accept write concern correctly return write concern errors when run
|
|
* on timeseries collections.
|
|
*
|
|
* @tags: [
|
|
* multiversion_incompatible,
|
|
* uses_transactions,
|
|
* does_not_support_stepdowns,
|
|
* ]
|
|
*/
|
|
|
|
import {ReplSetTest} from "jstests/libs/replsettest.js";
|
|
import {
|
|
checkWriteConcernBehaviorAdditionalCRUDOps,
|
|
checkWriteConcernBehaviorForAllCommands,
|
|
} from "jstests/libs/write_concern_all_commands.js";
|
|
|
|
const name = jsTestName();
|
|
const replTest = new ReplSetTest({
|
|
name: name,
|
|
nodes: [{}, {rsConfig: {priority: 0}}, {rsConfig: {priority: 0}}],
|
|
});
|
|
replTest.startSet();
|
|
replTest.initiate();
|
|
|
|
const preSetupTimeseries = function (conn, cluster, dbName, collName) {
|
|
let db = conn.getDB(dbName);
|
|
assert.commandWorked(db.createCollection(collName, {timeseries: {timeField: "time", metaField: "meta"}}));
|
|
};
|
|
|
|
checkWriteConcernBehaviorForAllCommands(
|
|
replTest.getPrimary(),
|
|
replTest,
|
|
"rs" /* clusterType */,
|
|
preSetupTimeseries,
|
|
false /* shardedCollection */,
|
|
true /*limitToTimeseries*/,
|
|
);
|
|
checkWriteConcernBehaviorAdditionalCRUDOps(
|
|
replTest.getPrimary(),
|
|
replTest,
|
|
"rs" /* clusterType */,
|
|
preSetupTimeseries,
|
|
false /* shardedCollection */,
|
|
false /* writeWithoutShardKey */,
|
|
true /*limitToTimeseries*/,
|
|
);
|
|
|
|
replTest.stopSet();
|