Files
mongo/jstests/core/all4.js
Randolph Tan 5595b94560 SERVER-12127 migrate js tests to jscore suite when not related to writes
Moved test jstest/[a-i].js -> jstests/core/ and made changes to comply with write command api
2014-02-28 16:26:33 -05:00

29 lines
725 B
JavaScript

// Test $all/$elemMatch with missing field - SERVER-4492
t = db.jstests_all4;
t.drop();
function checkQuery( query, val ) {
assert.eq( val, t.count(query) );
assert.eq( val, t.find(query).itcount() );
}
checkQuery( {a:{$all:[]}}, 0 );
checkQuery( {a:{$all:[1]}}, 0 );
checkQuery( {a:{$all:[{$elemMatch:{b:1}}]}}, 0 );
t.save({});
checkQuery( {a:{$all:[]}}, 0 );
checkQuery( {a:{$all:[1]}}, 0 );
checkQuery( {a:{$all:[{$elemMatch:{b:1}}]}}, 0 );
t.save({a:1});
checkQuery( {a:{$all:[]}}, 0 );
checkQuery( {a:{$all:[1]}}, 1 );
checkQuery( {a:{$all:[{$elemMatch:{b:1}}]}}, 0 );
t.save({a:[{b:1}]});
checkQuery( {a:{$all:[]}}, 0 );
checkQuery( {a:{$all:[1]}}, 1 );
checkQuery( {a:{$all:[{$elemMatch:{b:1}}]}}, 1 );