예제 #1
0
 def _get_select_tasks_and_datasets_data(self, datasets=(), tasks=()):
     data = {}
     if any(datasets):
         data = self._get_data_selected_datasets(datasets)
     if any(tasks):
         filtered = self._get_data_selected_tasks(tasks)
         data = dict(merge_dicts(data, filtered))
     return data
예제 #2
0
    def test_merge_two_dicts(self):
        dict1 = {
            4: ['some', 'data', 'here'],
            1: {
                "a": "A"
            },
            2: {
                "b": "B"
            },
            3: {
                'd': {
                    'Y': 2,
                    'U': (3, 2, 1),
                    4: ('stuff')
                }
            }
        }
        dict2 = {2: {"c": "C"}, 3: {"d": "D"}}

        result = merge_dicts(dict1, dict2)

        assert sorted(dict(result)) == sorted({
            1: {
                'a': 'A'
            },
            2: {
                'b': 'B',
                'c': 'C'
            },
            3: {
                'd': {
                    'Y': 2,
                    4: 'stuff',
                    'X': 1,
                    'U': (3, 2, 1)
                }
            },
            4: ['some', 'data', 'here']
        })
예제 #3
0
 def test_raises_error_missing_one_input_args(self):
     with pytest.raises(TypeError):
         merge_dicts({1: 1})
예제 #4
0
 def test_raises_error_missing_too_many_input_args(self):
     with pytest.raises(TypeError):
         merge_dicts({1: 1}, {2: 2}, {3: 3})