def test_merge_dict(self): """Test merge_dict""" dict1 = {'block':{'name':'AAA', 'b':{'c':1}, 'size':2}, 'das':{'system':'dbs'}} dict2 = {'block':{'name':'AAA', 'x':{'y':1}, 'z':1, 'size':2}, 'das':{'system':'phedex'}} merge_dict(dict1, dict2) expect = {'block': [{'b': {'c': 1}, 'name': 'AAA', 'size': 2}, {'x': {'y': 1}, 'z': 1, 'name': 'AAA', 'size': 2}], 'das': [{'system': 'dbs'}, {'system': 'phedex'}]} self.assertEqual(expect, dict1) dict1 = {'test':[1,2]} dict2 = {'test':3} expect = {'test':[1,2,3]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1) dict1 = {'test':[1,2]} dict2 = {'test':[3,4]} expect = {'test':[1,2,3,4]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1) dict1 = {'test':1} dict2 = {'test':[2,3]} expect = {'test':[1,2,3]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1) dict1 = {'test':1, 'foo': 1} dict2 = {'test':1, 'foo': [2,3]} expect = {'test':[1,1], 'foo':[1,2,3]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1)
def test_dict_value(self): """Test dict_value""" dict = {'a':{'b':{'c':1}}, 'd':2} result = dict_value(dict, 'a.b.c') expect = 1 self.assertEqual(expect, result) result = dict_value(dict, 'd') expect = 2 self.assertEqual(expect, result) dict = {'a' : [{'b':1}, {'b':2}]} result = dict_value(dict, 'a.b') expect = 1 self.assertEqual(expect, result) dict1 = {'a' : [{'b':1, 'c':1}, {'b':2, 'c':2}]} dict2 = {'a' : {'b':1, 'e':1}} merge_dict(dict1, dict2) expect = {'a': [{'c': 1, 'b': 1}, {'c': 2, 'b': 2}, {'b': 1, 'e': 1}]} self.assertEqual(expect, dict1)
def test_dict_value(self): """Test dict_value""" dict = {'a': {'b': {'c': 1}}, 'd': 2} result = dict_value(dict, 'a.b.c') expect = 1 self.assertEqual(expect, result) result = dict_value(dict, 'd') expect = 2 self.assertEqual(expect, result) dict = {'a': [{'b': 1}, {'b': 2}]} result = dict_value(dict, 'a.b') expect = 1 self.assertEqual(expect, result) dict1 = {'a': [{'b': 1, 'c': 1}, {'b': 2, 'c': 2}]} dict2 = {'a': {'b': 1, 'e': 1}} merge_dict(dict1, dict2) expect = {'a': [{'c': 1, 'b': 1}, {'c': 2, 'b': 2}, {'b': 1, 'e': 1}]} self.assertEqual(expect, dict1)
def test_merge_dict(self): """Test merge_dict""" dict1 = { 'block': { 'name': 'AAA', 'b': { 'c': 1 }, 'size': 2 }, 'das': { 'system': 'dbs' } } dict2 = { 'block': { 'name': 'AAA', 'x': { 'y': 1 }, 'z': 1, 'size': 2 }, 'das': { 'system': 'phedex' } } merge_dict(dict1, dict2) expect = { 'block': [{ 'b': { 'c': 1 }, 'name': 'AAA', 'size': 2 }, { 'x': { 'y': 1 }, 'z': 1, 'name': 'AAA', 'size': 2 }], 'das': [{ 'system': 'dbs' }, { 'system': 'phedex' }] } self.assertEqual(expect, dict1) dict1 = {'test': [1, 2]} dict2 = {'test': 3} expect = {'test': [1, 2, 3]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1) dict1 = {'test': [1, 2]} dict2 = {'test': [3, 4]} expect = {'test': [1, 2, 3, 4]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1) dict1 = {'test': 1} dict2 = {'test': [2, 3]} expect = {'test': [1, 2, 3]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1) dict1 = {'test': 1, 'foo': 1} dict2 = {'test': 1, 'foo': [2, 3]} expect = {'test': [1, 1], 'foo': [1, 2, 3]} merge_dict(dict1, dict2) self.assertEqual(expect, dict1)