diff options
Diffstat (limited to 'jstests/core/query/or/ork.js')
-rw-r--r-- | jstests/core/query/or/ork.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/jstests/core/query/or/ork.js b/jstests/core/query/or/ork.js new file mode 100644 index 00000000000..8ce2346b6f3 --- /dev/null +++ b/jstests/core/query/or/ork.js @@ -0,0 +1,21 @@ +// SERVER-2585 Test $or clauses within indexed top level $or clauses. + +t = db.jstests_ork; +t.drop(); + +t.createIndex({a: 1}); +t.save({a: [1, 2], b: 5}); +t.save({a: [2, 4], b: 5}); + +assert.eq(2, t.find({ + $or: [ + {a: 1, $and: [{$or: [{a: 2}, {a: 3}]}, {$or: [{b: 5}]}]}, + {a: 2, $or: [{a: 3}, {a: 4}]} + ] + }).itcount()); +assert.eq(1, t.find({ + $or: [ + {a: 1, $and: [{$or: [{a: 2}, {a: 3}]}, {$or: [{b: 6}]}]}, + {a: 2, $or: [{a: 3}, {a: 4}]} + ] + }).itcount()); |