Esempio n. 1
0
 def test_owned_dict_raises_when_wrong_type_arguments_to_update(self):
     owner = Owner()
     owned_dict = OwnedDict({'a': 1, 'b': 2, 'c': 3})
     owned_dict.owner = owner
     with self.assertRaisesRegex(TypeError, ("'int' object is not "
                                             "iterable")):
         owned_dict.update(5)
Esempio n. 2
0
 def test_owned_dict_raises_when_wrong_arguments_to_update(self):
     owner = Owner()
     owned_dict = OwnedDict({'a': 1, 'b': 2, 'c': 3})
     owned_dict.owner = owner
     with self.assertRaisesRegex(TypeError, ('update expected at most 1 '
                                             'argument, got 2')):
         owned_dict.update([('c', 0), ('d', 4), ('e', 5)], {}, c=50)
Esempio n. 3
0
 def test_owned_dict_get_notified_thru_update_iterable_and_kwargs(self):
     owner = Owner()
     owned_dict = OwnedDict({'a': 1, 'b': 2, 'c': 3})
     owned_dict.owner = owner
     owned_dict.update([('c', 0), ('d', 4), ('e', 5)], c=50)
     self.assertEqual(owned_dict, {'a': 1, 'b': 2, 'c': 50, 'd': 4, 'e': 5})
     self.assertEqual(owner.add_records, [
         AddRecord(owned_dict, 'c', 50),
         AddRecord(owned_dict, 'd', 4),
         AddRecord(owned_dict, 'e', 5)
     ])
     self.assertEqual(owner.del_records, [DelRecord(owned_dict, 3)])
Esempio n. 4
0
 def test_owned_dict_get_notified_thru_update_map_and_kwargs(self):
     owner = Owner()
     owned_dict = OwnedDict({'a': 1, 'b': 2, 'c': 3})
     owned_dict.owner = owner
     owned_dict.update({'c': 0, 'd': 4, 'e': 5}, c=7)
     self.assertEqual(owned_dict, {'a': 1, 'b': 2, 'c': 7, 'd': 4, 'e': 5})
     self.assertEqual(owner.add_records, [
         AddRecord(owned_dict, 'c', 7),
         AddRecord(owned_dict, 'd', 4),
         AddRecord(owned_dict, 'e', 5)
     ])
     self.assertEqual(owner.del_records, [DelRecord(owned_dict, 3)])