Files
mongo/jstests/core/query/delete/basic_remove.js
Mihai Andrei 5ed8f7dcf5 SERVER-93427 Move query writing tests from jstests/core/write to jstests/core/query (#31702)
GitOrigin-RevId: 2d69ca12e591fda58c4a5387ffae9d97c0ef2283
2025-02-04 19:38:51 +00:00

34 lines
747 B
JavaScript

// @tags: [requires_non_retryable_writes, requires_fastcount]
// remove.js
// unit test for db remove
const t = db[jsTestName()];
function f(n, dir) {
assert.commandWorked(t.createIndex({x: dir || 1}));
for (let i = 0; i < n; i++)
assert.commandWorked(
t.save({x: 3, z: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}));
assert.eq(n, t.find().count());
assert.commandWorked(t.remove({x: 3}));
assert.eq(0, t.find().count());
assert(t.findOne() == null, "A:" + tojson(t.findOne()));
assert(t.validate().valid, "B");
}
t.drop();
f(300, 1);
f(500, -1);
assert(t.validate().valid, "C");
// no query for remove() throws starting in 2.6
assert.throws(function() {
db.t.remove();
});