summaryrefslogtreecommitdiff
path: root/jstests/geo_array1.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/geo_array1.js')
-rw-r--r--jstests/geo_array1.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/jstests/geo_array1.js b/jstests/geo_array1.js
new file mode 100644
index 0000000..56b7c85
--- /dev/null
+++ b/jstests/geo_array1.js
@@ -0,0 +1,30 @@
+// Make sure many locations in one doc works, in the form of an array
+
+t = db.geoarray1
+t.drop();
+
+var locObj = []
+
+// Add locations everywhere
+for ( var i = 0; i < 10; i++ ) {
+ for ( var j = 0; j < 10; j++ ) {
+ if ( j % 2 == 0 )
+ locObj.push( [ i, j ] )
+ else
+ locObj.push( { x : i, y : j } )
+ }
+}
+
+// Add docs with all these locations
+for( var i = 0; i < 300; i++ ){
+ t.insert( { loc : locObj } )
+}
+t.ensureIndex( { loc : "2d" } )
+
+// Pull them back
+for ( var i = 0; i < 10; i++ ) {
+ for ( var j = 0; j < 10; j++ ) {
+ assert.eq( 300, t.find( { loc : { $within : { $box : [ [ i - 0.5, j - 0.5 ], [ i + 0.5, j + 0.5 ] ] } } } )
+ .count() )
+ }
+}