From c85b113c662b084330dd8d9ca8d15ba96f09f53c Mon Sep 17 00:00:00 2001 From: Dwight Date: Mon, 26 Jan 2009 17:23:45 -0500 Subject: check that _id is unique --- jstests/uniqueness.js | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 jstests/uniqueness.js (limited to 'jstests') diff --git a/jstests/uniqueness.js b/jstests/uniqueness.js new file mode 100644 index 00000000000..6cda7df2bbe --- /dev/null +++ b/jstests/uniqueness.js @@ -0,0 +1,33 @@ +//db=connect("192.168.58.1/test", u , p); + +t = db.foo; + +t.drop(); + +// test uniqueness of _id + +t.ensureIndex({_id:1}); + +t.save( { _id : 3 } ); +assert( !db.getLastError(), 1 ); + +// this should yield an error +t.insert( { _id : 3 } ); +assert( db.getLastError() , 2); +assert( t.count() == 1, "hmmm"); + +t.insert( { _id : 4, x : 99 } ); +assert( !db.getLastError() , 3); + +// this should yield an error +t.update( { _id : 4 } , { _id : 3, x : 99 } ); +assert( db.getLastError() , 4); +assert( t.findOne( {_id:4} ), 5 ); + +/* Check for an error message when we index and there are dups */ +db.bar.drop(); +db.bar.insert({_id:3}); +db.bar.insert({_id:3}); +assert( db.bar.count() == 2 , 6) ; +db.bar.ensureIndex({_id:1}); +assert( db.getLastError() , 7); -- cgit v1.2.1