summaryrefslogtreecommitdiff
path: root/jstests/core/in.js
blob: 852f6bcbca46b99ae5eb0882c712e20f567797af (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
28

t = db.in1;
t.drop();

t.save({a: 1});
t.save({a: 2});

// $in must take an array as argument: SERVER-7445
assert.throws(function() {
    return t.find({a: {$in: {x: 1}}}).itcount();
});
assert.throws(function() {
    return t.find({a: {$in: 1}}).itcount();
});

assert.eq(1, t.find({a: {$in: [1]}}).itcount(), "A");
assert.eq(1, t.find({a: {$in: [2]}}).itcount(), "B");
assert.eq(2, t.find({a: {$in: [1, 2]}}).itcount(), "C");

t.ensureIndex({a: 1});

assert.eq(1, t.find({a: {$in: [1]}}).itcount(), "D");
assert.eq(1, t.find({a: {$in: [2]}}).itcount(), "E");
assert.eq(2, t.find({a: {$in: [1, 2]}}).itcount(), "F");

assert.eq(0, t.find({a: {$in: []}}).itcount(), "G");

assert.eq(1, t.find({a: {$gt: 1, $in: [2]}}).itcount(), "H");