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
|
t = db.regex_matches_self;
t.drop();
t.insert({r:/^a/});
t.insert({r:/^a/i});
t.insert({r:/^b/});
// no index
assert.eq( /^a/, t.findOne({r:/^a/}).r, '1 1 a')
assert.eq( 1, t.count({r:/^a/}), '1 2')
assert.eq( /^a/i, t.findOne({r:/^a/i}).r, '2 1 a')
assert.eq( 1, t.count({r:/^a/i}), '2 2 a')
assert.eq( /^b/, t.findOne({r:/^b/}).r, '3 1 a')
assert.eq( 1, t.count({r:/^b/}), '3 2 a')
// with index
t.ensureIndex({r:1})
assert.eq( /^a/, t.findOne({r:/^a/}).r, '1 1 b')
assert.eq( 1, t.count({r:/^a/}), '1 2 b')
assert.eq( /^a/i, t.findOne({r:/^a/i}).r, '2 1 b')
assert.eq( 1, t.count({r:/^a/i}), '2 2 b')
assert.eq( /^b/, t.findOne({r:/^b/}).r, '3 1 b')
assert.eq( 1, t.count({r:/^b/}), '3 2 b')
t.insert( {r:"a"} );
assert.eq( 2, t.count({r:/^a/}), 'c' );
|