Exemple #1
0
    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)
Exemple #2
0
    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)
Exemple #3
0
    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)
Exemple #4
0
    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)