summaryrefslogtreecommitdiff
path: root/jstests/explain2.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/explain2.js')
-rw-r--r--jstests/explain2.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/jstests/explain2.js b/jstests/explain2.js
new file mode 100644
index 0000000..5a36552
--- /dev/null
+++ b/jstests/explain2.js
@@ -0,0 +1,27 @@
+
+t = db.explain2
+t.drop();
+
+t.ensureIndex( { a : 1 , b : 1 } );
+
+for ( i=1; i<10; i++ ){
+ t.insert( { _id : i , a : i , b : i , c : i } );
+}
+
+function go( q , c , b , o ){
+ var e = t.find( q ).explain();
+ assert.eq( c , e.n , "count " + tojson( q ) )
+ assert.eq( b , e.nscanned , "nscanned " + tojson( q ) )
+ assert.eq( o , e.nscannedObjects , "nscannedObjects " + tojson( q ) )
+}
+
+q = { a : { $gt : 3 } }
+go( q , 6 , 7 , 6 );
+
+q.b = 5
+go( q , 1 , 6 , 1 );
+
+delete q.b
+q.c = 5
+go( q , 1 , 7 , 6 );
+