summaryrefslogtreecommitdiff
path: root/jstests/geo_uniqueDocs2.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/geo_uniqueDocs2.js')
-rw-r--r--jstests/geo_uniqueDocs2.js80
1 files changed, 0 insertions, 80 deletions
diff --git a/jstests/geo_uniqueDocs2.js b/jstests/geo_uniqueDocs2.js
deleted file mode 100644
index f9b95113f78..00000000000
--- a/jstests/geo_uniqueDocs2.js
+++ /dev/null
@@ -1,80 +0,0 @@
-// Additional checks for geo uniqueDocs and includeLocs SERVER-3139.
-// SERVER-12120 uniqueDocs is deprecated.
-// Server always returns results with implied uniqueDocs=true
-
-collName = 'jstests_geo_uniqueDocs2';
-t = db[collName];
-t.drop();
-
-t.save( {loc:[[20,30],[40,50]]} );
-t.ensureIndex( {loc:'2d'} );
-
-// Check exact matches of different locations.
-assert.eq( 1, t.count( { loc : [20,30] } ) );
-assert.eq( 1, t.count( { loc : [40,50] } ) );
-
-// Check behavior for $near, where $uniqueDocs mode is unavailable.
-assert.eq( [t.findOne()], t.find( { loc: { $near: [50,50] } } ).toArray() );
-
-// Check correct number of matches for $within / $uniqueDocs.
-// uniqueDocs ignored - does not affect results.
-assert.eq( 1, t.count( { loc : { $within : { $center : [[30, 30], 40] } } } ) );
-assert.eq( 1, t.count( { loc : { $within : { $center : [[30, 30], 40], $uniqueDocs : true } } } ) );
-assert.eq( 1, t.count( { loc : { $within : { $center : [[30, 30], 40], $uniqueDocs : false } } } ) );
-
-// For $within / $uniqueDocs, limit applies to docs.
-assert.eq( 1, t.find( { loc : { $within : { $center : [[30, 30], 40], $uniqueDocs : false } } } ).limit(1).itcount() );
-
-// Now check a circle only containing one of the locs.
-assert.eq( 1, t.count( { loc : { $within : { $center : [[30, 30], 10] } } } ) );
-assert.eq( 1, t.count( { loc : { $within : { $center : [[30, 30], 10], $uniqueDocs : true } } } ) );
-assert.eq( 1, t.count( { loc : { $within : { $center : [[30, 30], 10], $uniqueDocs : false } } } ) );
-
-// Check number and character of results with geoNear / uniqueDocs / includeLocs.
-notUniqueNotInclude = db.runCommand( { geoNear : collName , near : [50,50], num : 10, uniqueDocs : false, includeLocs : false } );
-uniqueNotInclude = db.runCommand( { geoNear : collName , near : [50,50], num : 10, uniqueDocs : true, includeLocs : false } );
-notUniqueInclude = db.runCommand( { geoNear : collName , near : [50,50], num : 10, uniqueDocs : false, includeLocs : true } );
-uniqueInclude = db.runCommand( { geoNear : collName , near : [50,50], num : 10, uniqueDocs : true, includeLocs : true } );
-
-// Check that only unique docs are returned.
-assert.eq( 1, notUniqueNotInclude.results.length );
-assert.eq( 1, uniqueNotInclude.results.length );
-assert.eq( 1, notUniqueInclude.results.length );
-assert.eq( 1, uniqueInclude.results.length );
-
-// Check that locs are included.
-assert( !notUniqueNotInclude.results[0].loc );
-assert( !uniqueNotInclude.results[0].loc );
-assert( notUniqueInclude.results[0].loc );
-assert( uniqueInclude.results[0].loc );
-
-// For geoNear / uniqueDocs, 'num' limit seems to apply to locs.
-assert.eq( 1, db.runCommand( { geoNear : collName , near : [50,50], num : 1, uniqueDocs : false, includeLocs : false } ).results.length );
-
-// Check locs returned in includeLocs mode.
-t.remove({});
-objLocs = [{x:20,y:30,z:['loc1','loca']},{x:40,y:50,z:['loc2','locb']}];
-t.save( {loc:objLocs} );
-results = db.runCommand( { geoNear : collName , near : [50,50], num : 10, uniqueDocs : false, includeLocs : true } ).results;
-assert.contains( results[0].loc, objLocs );
-
-// Check locs returned in includeLocs mode, where locs are arrays.
-t.remove({});
-arrLocs = [[20,30],[40,50]];
-t.save( {loc:arrLocs} );
-results = db.runCommand( { geoNear : collName , near : [50,50], num : 10, uniqueDocs : false, includeLocs : true } ).results;
-// The original loc arrays are returned as objects.
-expectedLocs = arrLocs
-
-assert.contains( results[0].loc, expectedLocs );
-
-// Test a large number of locations in the array.
-t.drop();
-arr = [];
-for( i = 0; i < 10000; ++i ) {
- arr.push( [10,10] );
-}
-arr.push( [100,100] );
-t.save( {loc:arr} );
-t.ensureIndex( {loc:'2d'} );
-assert.eq( 1, t.count( { loc : { $within : { $center : [[99, 99], 5] } } } ) );