// // Tests polygon edge cases // var coll = db.getCollection( 'jstests_geo_poly_edge' ) coll.drop(); coll.ensureIndex({ loc : "2d" }) coll.insert({ loc : [10, 10] }) coll.insert({ loc : [10, -10] }) assert.eq( coll.find({ loc : { $within : { $polygon : [[ 10, 10 ], [ 10, 10 ], [ 10, -10 ]] } } }).itcount(), 2 ) assert.eq( coll.find({ loc : { $within : { $polygon : [[ 10, 10 ], [ 10, 10 ], [ 10, 10 ]] } } }).itcount(), 1 ) coll.insert({ loc : [179, 0] }) coll.insert({ loc : [0, 179] }) assert.eq( coll.find({ loc : { $within : { $polygon : [[0, 0], [1000, 0], [1000, 1000], [0, 1000]] } } }).itcount(), 3 )