summaryrefslogtreecommitdiff
path: root/jstests/core/write/update/update_multi5.js
blob: 683b4426874aa40f7778b2294ca8e17628cd814f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// @tags: [assumes_balancer_off, requires_multi_updates, requires_non_retryable_writes]

// tests that $addToSet works in a multi-update.
(function() {
"use strict";
var t = db.update_multi5;
t.drop();

assert.commandWorked(t.insert({path: 'r1', subscribers: [1, 2]}));
assert.commandWorked(t.insert({path: 'r2', subscribers: [3, 4]}));

var res =
    assert.commandWorked(t.update({}, {$addToSet: {subscribers: 5}}, {upsert: false, multi: true}));

assert.eq(res.nMatched, 2, tojson(res));

t.find().forEach(function(z) {
    assert.eq(3, z.subscribers.length, tojson(z));
});
})();