summaryrefslogtreecommitdiff
path: root/jstests/core/write/update/updated.js
blob: d850181afb5a0d28ec41dd457b126189d977e787 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Cannot implicitly shard accessed collections because of following errmsg: A single
// update/delete on a sharded collection must contain an exact match on _id or contain the shard
// key.
// @tags: [assumes_unsharded_collection]

let t = db.updated;
t.drop();

let o = {_id: Math.random(), items: [null, null, null, null]};

t.insert(o);
assert.docEq(o, t.findOne(), "A1");

o.items[0] = {
    amount: 9000,
    itemId: 1
};
t.update({}, {$set: {"items.0": o.items[0]}});
assert.docEq(o, t.findOne(), "A2");

o.items[0].amount += 1000;
o.items[1] = {
    amount: 1,
    itemId: 2
};
t.update({}, {$inc: {"items.0.amount": 1000}, $set: {"items.1": o.items[1]}});
assert.docEq(o, t.findOne(), "A3");