summaryrefslogtreecommitdiff
path: root/jstests/core/remove.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/core/remove.js')
-rw-r--r--jstests/core/remove.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/jstests/core/remove.js b/jstests/core/remove.js
new file mode 100644
index 00000000000..6800a41fedc
--- /dev/null
+++ b/jstests/core/remove.js
@@ -0,0 +1,27 @@
+// remove.js
+// unit test for db remove
+
+t = db.removetest;
+
+function f(n,dir) {
+ t.ensureIndex({x:dir||1});
+ for( i = 0; i < n; i++ ) t.save( { x:3, z:"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" } );
+
+ assert.eq( n , t.find().count() );
+ t.remove({x:3});
+
+ assert.eq( 0 , t.find().count() );
+
+ assert( t.findOne() == null , "A:" + tojson( t.findOne() ) );
+ assert( t.validate().valid , "B" );
+}
+
+t.drop();
+f(300, 1);
+
+f(500, -1);
+
+assert(t.validate().valid , "C" );
+
+// no query for remove() throws starting in 2.6
+assert.throws(function() { db.t.remove() });