summaryrefslogtreecommitdiff
path: root/jstests/core/fts4.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/core/fts4.js')
-rw-r--r--jstests/core/fts4.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/jstests/core/fts4.js b/jstests/core/fts4.js
new file mode 100644
index 00000000000..8598457b033
--- /dev/null
+++ b/jstests/core/fts4.js
@@ -0,0 +1,22 @@
+
+load( "jstests/libs/fts.js" );
+
+t = db.text4;
+t.drop();
+
+t.save( { _id : 1 , x : [ "az" , "b" , "x" ] , y : [ "c" , "d" , "m" ] , z : 1 } );
+t.save( { _id : 2 , x : [ "c" , "d" , "y" ] , y : [ "az" , "b" , "n" ] , z : 2 } );
+
+t.ensureIndex( { y : "text" , z : 1 } , { weights : { x : 10 } } );
+
+assert.eq( [1,2] , queryIDS( t , "az" ) , "A1" );
+assert.eq( [2,1] , queryIDS( t , "d" ) , "A2" );
+
+assert.eq( [1] , queryIDS( t , "x" ) , "A3" );
+assert.eq( [2] , queryIDS( t , "y" ) , "A4" );
+
+assert.eq( [1] , queryIDS( t , "az" , { z : 1 } ) , "B1" );
+assert.eq( [1] , queryIDS( t , "d" , { z : 1 } ) , "B2" );
+
+assert.eq( 0 , lastCommadResult.stats.nscannedObjects , "B3" );
+assert.eq( 2 , lastCommadResult.stats.nscanned , "B4" );