diff options
Diffstat (limited to 'jstests/server5346.js')
| -rw-r--r-- | jstests/server5346.js | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/jstests/server5346.js b/jstests/server5346.js new file mode 100644 index 00000000000..f90d6b579c2 --- /dev/null +++ b/jstests/server5346.js @@ -0,0 +1,16 @@ + +t = db.server5346; +t.drop(); + +x = { _id : 1 , versions : {} } +t.insert( x ) + +t.update({ _id : 1 }, { $inc : { "versions.2_01" : 1 } } ) +t.update({ _id : 1 }, { $inc : { "versions.2_1" : 2 } } ) +t.update({ _id : 1 }, { $inc : { "versions.01" : 3 } } ) +t.update({ _id : 1 }, { $inc : { "versions.1" : 4 } } ) + +// Make sure the correct fields are set, without duplicates. +// String comparison must be used because V8 reorders numeric fields in objects. +assert.eq( '{ "_id" : 1, "versions" : { "01" : 3, "1" : 4, "2_01" : 1, "2_1" : 2 } }' , + tojson( t.findOne(), null, true ) ) |
