def test_nested_merge_collect_default(self): stub_dictionaries = [{ 'a': 1, 'b': [2], 'c': 3 }, { 'a': 1, 'b': [1], 'c': 3 }, { 'a': 2, 'b': [1], 'c': 3 }] output = database.nested_merge(['a'], [('b', 'default')], stub_dictionaries) assert_that( output, is_([{ 'a': 1, 'b:set': [1, 2], 'b': [1, 2] }, { 'a': 2, 'b:set': [1], 'b': [1] }]))
def test_nested_merge_merges_dictionaries(self): output = database.nested_merge(['a', 'b'], [], self.dictionaries) assert_that( output[0], is_({ "a": 1, "_count": 0, "_group_count": 2, "_subgroup": [ { "b": 1 }, { "b": 2 }, ], })) assert_that( output[1], is_({ "a": 2, "_count": 0, "_group_count": 1, "_subgroup": [{ "b": 1 }], }))
def test_nested_merge_collect_sum(self): stub_dictionaries = [ {'a': 1, 'b': [2]}, {'a': 1, 'b': [1]}, {'a': 2, 'b': [1]} ] output = database.nested_merge(['a'], [('b', 'sum')], stub_dictionaries) assert_that(output, is_([ {'a': 1, 'b:sum': 3}, {'a': 2, 'b:sum': 1} ]))
def test_nested_merge_collect_default(self): stub_dictionaries = [ {'a': 1, 'b': [2], 'c': 3}, {'a': 1, 'b': [1], 'c': 3}, {'a': 2, 'b': [1], 'c': 3} ] output = database.nested_merge(['a'], [('b', 'default')], stub_dictionaries) assert_that(output, is_([ {'a': 1, 'b:set': [1, 2], 'b': [1, 2]}, {'a': 2, 'b:set': [1], 'b': [1]} ]))
def test_nested_merge_squashes_duplicates(self): output = database.nested_merge(['a'], [], self.dictionaries) assert_that(output, is_([{ 'a': 1, 'b': 2, 'c': 3 }, { 'a': 2, 'b': 1, 'c': 3 }]))
def test_nested_merge_collect_sum(self): stub_dictionaries = [{ 'a': 1, 'b': [2] }, { 'a': 1, 'b': [1] }, { 'a': 2, 'b': [1] }] output = database.nested_merge(['a'], [('b', 'sum')], stub_dictionaries) assert_that(output, is_([{'a': 1, 'b:sum': 3}, {'a': 2, 'b:sum': 1}]))
def test_nested_merge_merges_dictionaries(self): output = database.nested_merge(['a', 'b'], [], self.dictionaries) assert_that(output[0], is_({ "a": 1, "_count": 0, "_group_count": 2, "_subgroup": [ {"b": 1}, {"b": 2}, ], })) assert_that(output[1], is_({ "a": 2, "_count": 0, "_group_count": 1, "_subgroup": [ {"b": 1} ], }))
def test_nested_merge_squashes_duplicates(self): output = database.nested_merge(['a'], [], self.dictionaries) assert_that(output, is_([ {'a': 1}, {'a': 2} ]))