From 5595b945603b0712c537787e31e6da661c424fee Mon Sep 17 00:00:00 2001 From: Randolph Tan Date: Tue, 14 Jan 2014 14:09:42 -0500 Subject: SERVER-12127 migrate js tests to jscore suite when not related to writes Moved test jstest/[a-i].js -> jstests/core/ and made changes to comply with write command api --- jstests/core/index_sparse1.js | 45 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 jstests/core/index_sparse1.js (limited to 'jstests/core/index_sparse1.js') diff --git a/jstests/core/index_sparse1.js b/jstests/core/index_sparse1.js new file mode 100644 index 00000000000..fbcc20a9217 --- /dev/null +++ b/jstests/core/index_sparse1.js @@ -0,0 +1,45 @@ + +t = db.index_sparse1; +t.drop(); + +t.insert( { _id : 1 , x : 1 } ) +t.insert( { _id : 2 , x : 2 } ) +t.insert( { _id : 3 , x : 2 } ) +t.insert( { _id : 4 } ) +t.insert( { _id : 5 } ) + +assert.eq( 5 , t.count() , "A1" ) +assert.eq( 5 , t.find().sort( { x : 1 } ).itcount() , "A2" ) + +t.ensureIndex( { x : 1 } ) +assert.eq( 2 , t.getIndexes().length , "B1" ) +assert.eq( 5 , t.find().sort( { x : 1 } ).itcount() , "B2" ) +t.dropIndex( { x : 1 } ) +assert.eq( 1 , t.getIndexes().length , "B3" ) + +t.ensureIndex( { x : 1 } , { sparse : 1 } ) +assert.eq( 2 , t.getIndexes().length , "C1" ) +assert.eq( 5 , t.find().sort( { x : 1 } ).itcount() , "C2" ) +t.dropIndex( { x : 1 } ) +assert.eq( 1 , t.getIndexes().length , "C3" ) + +// -- sparse & unique + +t.remove( { _id : 2 } ) + +// test that we can't create a unique index without sparse +assert.writeError( t.ensureIndex( { x : 1 } , { unique : 1 } )); +assert.eq( 1 , t.getIndexes().length , "D2" ) + + +t.ensureIndex( { x : 1 } , { unique : 1 , sparse : 1 } ) +assert.eq( 2 , t.getIndexes().length , "E1" ) +t.dropIndex( { x : 1 } ) +assert.eq( 1 , t.getIndexes().length , "E3" ) + + +t.insert( { _id : 2 , x : 2 } ) +t.ensureIndex( { x : 1 } , { unique : 1 , sparse : 1 } ) +assert.eq( 1 , t.getIndexes().length , "F1" ) + + -- cgit v1.2.1