summaryrefslogtreecommitdiff
path: root/jstests/core/index/geo/geo6.js
blob: 8d32c066c88e2800ed64d1ade6d42d8e19c4df89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
t = db.geo6;
t.drop();

t.createIndex({loc: "2d"});

assert.eq(0, t.find().itcount(), "pre0");
assert.eq(0, t.find({loc: {$near: [50, 50]}}).itcount(), "pre1");

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");

t.find({loc: {$near: [50, 50]}}).sort({_id: 1}).forEach(printjson);
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");

t.insert({_id: 4, loc: []});
assert.eq(4, t.find().itcount(), "C1");