@@ -294,8 +294,8 @@ class Doc(BaseDocument):
294
294
self .assertRaises (ValidationError , d .save )
295
295
296
296
@unittest .skipUnless (PYMONGO_CLIENT , 'pymongo not installed or connection refused' )
297
- def test_partial_update_addToSet (self ):
298
- """Pymongo: addToSet functionality with `save`"""
297
+ def test_partial_update_add_to_set (self ):
298
+ """Pymongo: $ addToSet functionality with `save`"""
299
299
300
300
class Doc (BaseDocument ):
301
301
dot_notation = True
@@ -304,28 +304,28 @@ class Doc(BaseDocument):
304
304
moo = Field (six .text_type )
305
305
Doc .register (client = PYMONGO_CLIENT , db = TEST_DBNAME )
306
306
307
- self .assertRaises (ValidationError , Doc ().addToSet , * ('$fail' , 42 ))
308
- self .assertRaises (ValidationError , Doc ().addToSet , * ('bar.$1' , 42 ))
307
+ self .assertRaises (ValidationError , Doc ().add_to_set , * ('$fail' , 42 ))
308
+ self .assertRaises (ValidationError , Doc ().add_to_set , * ('bar.$1' , 42 ))
309
309
# use dict.__setitem__ to bypass RecordingDict cast at self.__setitem__
310
310
d = Doc ()
311
311
dict .__setitem__ (d , 'bar' , {})
312
312
self .assertEqual (dict , type (d .bar )) # not RecordingDict
313
- self .assertRaises (ValidationError , d .addToSet , * ('bar.1' , 42 ))
313
+ self .assertRaises (ValidationError , d .add_to_set , * ('bar.1' , 42 ))
314
314
d = Doc (foo = ['foo_1' , 'foo_2' ], bar = {'1' : 'bar_1' , '2' : []}, moo = six .u ('moo val' ))
315
315
d .insert ()
316
- self .assertRaises (ValidationError , d .addToSet , * ('moo' , 42 ))
317
- self .assertRaises (ValidationError , d .addToSet , * ('moo.not_dict' , 42 ))
318
- self .assertRaises (ValidationError , d .addToSet , * ('undefined.field' , 42 ))
319
- self .assertRaises (UnsupportedOperation , d .addToSet , * ('bar.a.b' , 42 ))
320
- d .addToSet ('foo' , 'foo_1' )
316
+ self .assertRaises (ValidationError , d .add_to_set , * ('moo' , 42 ))
317
+ self .assertRaises (ValidationError , d .add_to_set , * ('moo.not_dict' , 42 ))
318
+ self .assertRaises (ValidationError , d .add_to_set , * ('undefined.field' , 42 ))
319
+ self .assertRaises (UnsupportedOperation , d .add_to_set , * ('bar.a.b' , 42 ))
320
+ d .add_to_set ('foo' , 'foo_1' )
321
321
d .moo = six .u ('new moo' )
322
- d .addToSet ('foo' , 'foo_3' )
323
- d .addToSet ('foo' , 'foo_1' )
324
- d .addToSet ('bar.2' , 'L33t' )
325
- d .addToSet ('bar.3' , 'new_1' )
326
- d .addToSet ('bar.3' , 'new_1' )
327
- d .addToSet ('bar.3' , 'new_2' )
328
- self .assertRaises (ValidationError , d .addToSet , * ('bar.1' , 1 ))
322
+ d .add_to_set ('foo' , 'foo_3' )
323
+ d .add_to_set ('foo' , 'foo_1' )
324
+ d .add_to_set ('bar.2' , 'L33t' )
325
+ d .add_to_set ('bar.3' , 'new_1' )
326
+ d .add_to_set ('bar.3' , 'new_1' )
327
+ d .add_to_set ('bar.3' , 'new_2' )
328
+ self .assertRaises (ValidationError , d .add_to_set , * ('bar.1' , 1 ))
329
329
topdiff = {'$set' : {'moo' : 'new moo' }, '$unset' : {},
330
330
'$addToSet' : {'foo' : {'$each' : ['foo_1' , 'foo_3' ]}}}
331
331
subdiff = {'$set' : {}, '$unset' : {},
@@ -337,20 +337,20 @@ class Doc(BaseDocument):
337
337
d .save ()
338
338
d_db = Doc .find_one ()
339
339
self .assertTrue (d_copy == d == d_db )
340
- # check against field duplication at addToSet
340
+ # check against field duplication at $ addToSet
341
341
d = Doc ()
342
342
d .foo = [42 ] # set -- top-level $addToSet will clash
343
343
self .assertEqual ([42 ], d .__nanodiff__ ['$set' ]['foo' ])
344
- self .assertRaises (ValidationError , d .addToSet , * ('foo' , 42 ))
344
+ self .assertRaises (ValidationError , d .add_to_set , * ('foo' , 42 ))
345
345
del d .foo # unset -- top-level $addToSet will clash
346
- self .assertRaises (ValidationError , d .addToSet , * ('foo' , 42 ))
346
+ self .assertRaises (ValidationError , d .add_to_set , * ('foo' , 42 ))
347
347
d = Doc (bar = {})
348
348
d .bar ['1' ] = [42 ] # deep-level set -- dotted $addToSet will clash
349
- self .assertRaises (ValidationError , d .addToSet , * ('bar.1' , 42 ))
349
+ self .assertRaises (ValidationError , d .add_to_set , * ('bar.1' , 42 ))
350
350
d = Doc ()
351
351
d .bar = {'1' : [42 ]} # dict set on top-level -- dotted $addToSet will clash
352
352
self .assertEqual ({'bar' : {'1' : [42 ]}}, d .__nanodiff__ ['$set' ])
353
- self .assertRaises (ValidationError , d .addToSet , * ('bar.1' , 42 ))
353
+ self .assertRaises (ValidationError , d .add_to_set , * ('bar.1' , 42 ))
354
354
355
355
class Doc2 (BaseDocument ):
356
356
dot_notation = True
@@ -359,8 +359,8 @@ class Doc2(BaseDocument):
359
359
Doc2 .register (client = PYMONGO_CLIENT , db = TEST_DBNAME )
360
360
dd = Doc2 ()
361
361
dd .insert ()
362
- # addToSet on unset field
363
- dd .addToSet ('optional.sub' , 42 )
362
+ # $ addToSet on unset field
363
+ dd .add_to_set ('optional.sub' , 42 )
364
364
self .assertEqual ([42 ], dd .optional ['sub' ])
365
365
self .assertEqual ({'sub' : {'$each' : [42 ]}}, dd .optional .__nanodiff__ ['$addToSet' ])
366
366
dd .save ()
0 commit comments