diff options
Diffstat (limited to 'jstests/core/inb.js')
-rw-r--r-- | jstests/core/inb.js | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/jstests/core/inb.js b/jstests/core/inb.js new file mode 100644 index 00000000000..34ec843d36c --- /dev/null +++ b/jstests/core/inb.js @@ -0,0 +1,19 @@ +// Test $in regular expressions with overlapping index bounds. SERVER-4677 + +t = db.jstests_inb; +t.drop(); + +function checkBoundsAndResults( query ) { + assert.eq( [ 'a', 'b' ], t.find( query ).explain().indexBounds.x[0] ); + assert.eq( 4, t.count( query ) ); + assert.eq( 4, t.find( query ).itcount() ); +} + +t.ensureIndex( {x:1} ); +t.save( {x:'aa'} ); +t.save( {x:'ab'} ); +t.save( {x:'ac'} ); +t.save( {x:'ad'} ); + +checkBoundsAndResults( {x:{$in:[/^a/,/^ab/]}} ); +checkBoundsAndResults( {x:{$in:[/^ab/,/^a/]}} ); |