mongo-debian/jstests/unset.js
2010-01-31 08:32:52 +01:00

19 lines
580 B
JavaScript

t = db.unset;
t.drop();
orig = { _id : 1, emb : {} };
t.insert(orig);
t.update( { _id : 1 }, { $unset : { 'emb.a' : 1 }});
t.update( { _id : 1 }, { $unset : { 'z' : 1 }});
assert.eq( orig , t.findOne() , "A" );
t.update( { _id : 1 }, { $set : { 'emb.a' : 1 }});
t.update( { _id : 1 }, { $set : { 'z' : 1 }});
t.update( { _id : 1 }, { $unset : { 'emb.a' : 1 }});
t.update( { _id : 1 }, { $unset : { 'z' : 1 }});
assert.eq( orig , t.findOne() , "B" ); // note that emb isn't removed
t.update( { _id : 1 }, { $unset : { 'emb' : 1 }});
assert.eq( {_id :1} , t.findOne() , "C" );