diff options
author | Antonin Kral <a.kral@bobek.cz> | 2011-08-23 08:47:17 +0200 |
---|---|---|
committer | Antonin Kral <a.kral@bobek.cz> | 2011-08-23 08:47:17 +0200 |
commit | cbe2d992e9cd1ea66af9fa91df006106775d3073 (patch) | |
tree | fca8e11a8ab7f063ae26802016068f9c814f6176 /jstests/geo_update.js | |
parent | 64b33ee522375a8dc15be2875dfb7db4502259b0 (diff) | |
download | mongodb-cbe2d992e9cd1ea66af9fa91df006106775d3073.tar.gz |
Imported Upstream version 1.8.3
Diffstat (limited to 'jstests/geo_update.js')
-rw-r--r-- | jstests/geo_update.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/jstests/geo_update.js b/jstests/geo_update.js new file mode 100644 index 0000000..dd4b28c --- /dev/null +++ b/jstests/geo_update.js @@ -0,0 +1,37 @@ +// Tests geo queries w/ update & upsert +// from SERVER-3428 + +var coll = db.testGeoUpdate +coll.drop() + +coll.ensureIndex({ loc : "2d" }) + +// Test normal update +print( "Updating..." ) + +coll.insert({ loc : [1.0, 2.0] }) + +coll.update({ loc : { $near : [1.0, 2.0] } }, + { x : true, loc : [1.0, 2.0] }) + +// Test upsert +print( "Upserting..." ) + +coll.update({ loc : { $within : { $center : [[10, 20], 1] } } }, + { x : true }, + true) + +coll.update({ loc : { $near : [10.0, 20.0], $maxDistance : 1 } }, + { x : true }, + true) + + +coll.update({ loc : { $near : [100, 100], $maxDistance : 1 } }, + { $set : { loc : [100, 100] }, $push : { people : "chris" } }, + true) + +coll.update({ loc : { $near : [100, 100], $maxDistance : 1 } }, + { $set : { loc : [100, 100] }, $push : { people : "john" } }, + true) + +assert.eq( 4, coll.find().itcount() ) |