2010-03-01 04:19:04 +01:00
|
|
|
|
|
|
|
t = db.geo6;
|
|
|
|
t.drop();
|
|
|
|
|
|
|
|
t.ensureIndex( { loc : "2d" } );
|
|
|
|
|
2010-03-11 04:18:11 +01:00
|
|
|
assert.eq( 0 , t.find().itcount() , "pre0" );
|
|
|
|
assert.eq( 0 , t.find( { loc : { $near : [50,50] } } ).itcount() , "pre1" )
|
|
|
|
|
2010-03-01 04:19:04 +01:00
|
|
|
t.insert( { _id : 1 , loc : [ 1 , 1 ] } )
|
|
|
|
t.insert( { _id : 2 , loc : [ 1 , 2 ] } )
|
|
|
|
t.insert( { _id : 3 } )
|
|
|
|
|
|
|
|
assert.eq( 3 , t.find().itcount() , "A1" )
|
|
|
|
assert.eq( 2 , t.find().hint( { loc : "2d" } ).itcount() , "A2" )
|
|
|
|
assert.eq( 2 , t.find( { loc : { $near : [50,50] } } ).itcount() , "A3" )
|
2010-03-11 04:31:10 +01:00
|
|
|
|
|
|
|
assert.eq( 1 , t.find( { loc : { $near : [50,50] } } ).sort( { _id : 1 } ).next()._id , "B1" )
|
|
|
|
assert.eq( 2 , t.find( { loc : { $near : [50,50] } } ).sort( { _id : -1 } ).next()._id , "B1" )
|
|
|
|
|
|
|
|
|
2010-03-18 20:05:13 +01:00
|
|
|
t.insert( { _id : 4 , loc : [] } )
|
|
|
|
assert.eq( 4 , t.find().itcount() , "C1" )
|