summaryrefslogtreecommitdiff
path: root/jstests/core/geo_circle3.js
blob: 4e1fde4aa896bc6e6d0525ec803a2d152c879fb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// SERVER-848 and SERVER-1191.
db.places.drop();

n = 0;
db.places.save({"_id": n++, "loc": {"x": 4.9999, "y": 52}});
db.places.save({"_id": n++, "loc": {"x": 5, "y": 52}});
db.places.save({"_id": n++, "loc": {"x": 5.0001, "y": 52}});
db.places.save({"_id": n++, "loc": {"x": 5, "y": 52.0001}});
db.places.save({"_id": n++, "loc": {"x": 5, "y": 51.9999}});
db.places.save({"_id": n++, "loc": {"x": 4.9999, "y": 52.0001}});
db.places.save({"_id": n++, "loc": {"x": 5.0001, "y": 52.0001}});
db.places.save({"_id": n++, "loc": {"x": 4.9999, "y": 51.9999}});
db.places.save({"_id": n++, "loc": {"x": 5.0001, "y": 51.9999}});
db.places.ensureIndex({loc: "2d"});
radius = 0.0001;
center = [5, 52];
// print(db.places.find({"loc" : {"$within" : {"$center" : [center, radius]}}}).count())
// FIXME: we want an assert, e.g., that there be 5 answers in the find().
db.places.find({"loc": {"$within": {"$center": [center, radius]}}}).forEach(printjson);

// the result:
// { "_id" : ObjectId("4bb1f2f088df513435bcb4e1"), "loc" : { "x" : 5, "y" : 52 } }
// { "_id" : ObjectId("4bb1f54383459c40223a8ae7"), "loc" : { "x" : 5, "y" : 51.9999 } }
// { "_id" : ObjectId("4bb1f54583459c40223a8aeb"), "loc" : { "x" : 5.0001, "y" : 51.9999 } }
// { "_id" : ObjectId("4bb1f2e588df513435bcb4e0"), "loc" : { "x" : 4.9999, "y" : 52 } }
// { "_id" : ObjectId("4bb1f30888df513435bcb4e2"), "loc" : { "x" : 5.0001, "y" : 52 } }
// { "_id" : ObjectId("4bb1f54383459c40223a8ae8"), "loc" : { "x" : 4.9999, "y" : 52.0001 } }