summaryrefslogtreecommitdiff
path: root/jstests/core/fts_phrase.js
blob: 471fedbfb4230630ac9aa78d9ad37a38c3e14983 (plain)
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

t = db.text_phrase;
t.drop();

t.save( { _id : 1 , title : "my blog post" , text : "i am writing a blog. yay" } );
t.save( { _id : 2 , title : "my 2nd post" , text : "this is a new blog i am typing. yay" } );
t.save( { _id : 3 , title : "knives are Fun" , text : "this is a new blog i am writing. yay" } );

t.ensureIndex( { "title" : "text" , text : "text" } , { weights : { title : 10 } } );

res = t.find( { "$text" : { "$search" : "blog write" } }, { score: { "$meta" : "textScore" } }  ).sort( { score: { "$meta" : "textScore" } });
assert.eq( 3, res.length() );
assert.eq( 1, res[0]._id );
assert( res[0].score > (res[1].score*2), tojson(res.toArray()));

res = t.find( { "$text" : { "$search" : "write blog" } }, { score: { "$meta" : "textScore" } }  ).sort( { score: { "$meta" : "textScore" } });
assert.eq( 3, res.length() );
assert.eq( 1, res[0]._id );
assert( res[0].score > (res[1].score*2), tojson(res.toArray()));