Example #1
0
 def test_simpleListReplace(self):
     origList = ['bad', 'mother', 'Fer']
     orig = {1: origList, 'foo': 'bar'}
     new = {1: {0: 'samuel', 1: 'jackson'}, 'foo': 'bar'}
     both, only1, only2, diff = arguments.compareCascadingDicts(orig, new)
     self.assertEqual(both, set([1, 'foo']))
     self.assertEqual(only1, set())
     self.assertEqual(only2, set())
     print('diff:', diff)
     self.assertEqual(
         diff,
         {1: {
             0: 'samuel',
             1: 'jackson',
             2: arguments.RemovedKey('Fer')
         }})
     arguments.mergeCascadingDicts(diff, orig)
     self.assertEqual(
         orig, {
             1: {
                 0: 'samuel',
                 1: 'jackson',
                 2: arguments.RemovedKey('Fer')
             },
             'foo': 'bar'
         })
     self.assertTrue(origList is not orig[1])
Example #2
0
 def test_subRemove(self):
     orig = {1: {'plants': 'stegosaurus'}}
     arguments.mergeCascadingDicts(
         {1: {
             'plants': arguments.RemovedKey('old')
         }}, orig)
     self.assertEqual(orig, {1: {}})
Example #3
0
 def test_simpleRemove(self):
     orig = {1: 'a'}
     new = {}
     both, only1, only2, diff = arguments.compareCascadingDicts(orig, new)
     self.assertEqual(both, set())
     self.assertEqual(only1, set([1]))
     self.assertEqual(only2, set())
     self.assertEqual(diff, {1: arguments.RemovedKey('a')})
     arguments.mergeCascadingDicts(diff, orig)
     self.assertEqual(orig, new)
Example #4
0
 def test_simpleListRemove(self):
     origList = ['bad', 'mother', 'Fer']
     orig = {1: origList}
     arguments.mergeCascadingDicts({1: {
         0: arguments.RemovedKey('old')
     }},
                                   orig,
                                   allowDictToListMerging=True)
     self.assertEqual(orig, {1: ['mother', 'Fer']})
     self.assertTrue(origList is orig[1])
Example #5
0
 def test_simpleListRemove(self):
     origList = ['bad', 'mother', 'Fer']
     orig = {1: origList}
     new = {1: ['bad', 'mother']}
     both, only1, only2, diff = arguments.compareCascadingDicts(orig, new)
     self.assertEqual(both, set([1]))
     self.assertEqual(only1, set())
     self.assertEqual(only2, set())
     self.assertEqual(diff, {1: {2: arguments.RemovedKey('Fer')}})
     arguments.mergeCascadingDicts(diff, orig, allowDictToListMerging=True)
     self.assertEqual(orig, new)
     self.assertTrue(origList is orig[1])
Example #6
0
 def test_subRemove(self):
     orig = {1: {'plants': 'stegosaurus'}}
     new = {1: {}}
     both, only1, only2, diff = arguments.compareCascadingDicts(orig, new)
     self.assertEqual(both, set([1]))
     self.assertEqual(only1, set())
     self.assertEqual(only2, set())
     self.assertEqual(diff,
                      {1: {
                          'plants': arguments.RemovedKey('stegosaurus')
                      }})
     arguments.mergeCascadingDicts(diff, orig)
     self.assertEqual(orig, new)
Example #7
0
 def test_simpleRemove(self):
     orig = {1: 'a'}
     arguments.mergeCascadingDicts({1: arguments.RemovedKey('old')}, orig)
     self.assertEqual(orig, {})