diff options
author | Eliot Horowitz <eliot@10gen.com> | 2013-05-19 21:18:32 -0400 |
---|---|---|
committer | Eliot Horowitz <eliot@10gen.com> | 2013-05-19 21:18:32 -0400 |
commit | 551cb75376b86b059b846f12ad40f0c6bb638c2f (patch) | |
tree | 3d15437592c85f4bd183e5ae33a09947f2a165f0 | |
parent | 705872c7e387f65a15d4c24163627f65b50be21d (diff) | |
download | mongo-551cb75376b86b059b846f12ad40f0c6bb638c2f.tar.gz |
SERVER-6400: additional update test
-rw-r--r-- | jstests/pull_or.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/jstests/pull_or.js b/jstests/pull_or.js new file mode 100644 index 00000000000..905c7a87060 --- /dev/null +++ b/jstests/pull_or.js @@ -0,0 +1,21 @@ + +t = db.pull_or; +t.drop(); + +doc = { _id : 1 , a : { b : [ { x : 1 }, + { y : 'y' }, + { x : 2 }, + { z : 'z' } ] } }; + +t.insert( doc ); + +t.update({}, { $pull : { 'a.b' : { 'y' : { $exists : true } } } } ); + +assert.eq( [ { x : 1 }, { x : 2 }, { z : 'z' } ], t.findOne().a.b ); + +t.drop(); +t.insert( doc ); +t.update({}, { $pull : { 'a.b' : { $or : [ { 'y' : { $exists : true } }, + { 'z' : { $exists : true } } ] } } } ); + +assert.eq( [ { x : 1 }, { x : 2 } ], t.findOne().a.b ); |