mongo/jstests/core/in.js

29 lines
736 B
JavaScript

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");