def testcombine_metadata_lists(): d1 = {"a": [1, 2], "b": [1, 2]} assert combine_metadata([d1], append_to_list=False) == d1 combined_metadata = combine_metadata([d1, d1], append_to_list=False) assert set(combined_metadata["a"]) == set([1, 2]) assert set(combined_metadata["b"]) == set([1, 2])
def testcombine_metadata(): d1 = {"a": 1, "b": 1} d2 = {"a": 1, "b": 2} d3 = {"a": 2, "b": 2} d4 = {"a": 1, "c": 3} assert combine_metadata([d1]) == d1 assert combine_metadata([d1, d1]) == d1 assert combine_metadata([d1, d2]) == {"a": 1} assert combine_metadata([d1, d2, d3]) == {} assert combine_metadata([d1, d4]) == {"a": 1, "b": 1, "c": 3}
def testcombine_metadata_nested(): d1 = {"a": {"l2a": 1}, "b": {"l2b": 1}} d2 = {"a": {"l2a": 1}, "b": {"l2b": 2}} d3 = {"a": {"l2a": 2}, "b": {"l2b": 2}} d4 = {"a": {"l2a": 1}, "c": {"l2c": 3}} assert combine_metadata([d1]) == d1 assert combine_metadata([d1, d1]) == d1 assert combine_metadata([d1, d2]) == {"a": {"l2a": 1}} assert combine_metadata([d1, d2, d3]) == {} assert combine_metadata([d1, d4]) == { "a": {"l2a": 1}, "b": {"l2b": 1}, "c": {"l2c": 3}, }
def testcombine_metadata_nested_lists(): d1 = {"a": [[1], [2]], "b": [[1], [2]]} assert combine_metadata([d1]) == d1 assert combine_metadata([d1, d1]) == {"a": [[1], [2]], "b": [[1], [2]]}
def testcombine_metadata_incompatible(): d1 = {"a": 1, "b": [1]} d2 = {"a": 1, "b": 1} assert combine_metadata([d1, d2]) == {"a": 1}