Example #1
0
def test_edge_cases():
    assert merge() == None
    assert merge(42) == 42
Example #2
0
def test_merge_difftype():
    with pytest.raises(TypeError):
        merge(42, 'hello')
Example #3
0
def test_hole():
    assert merge('hello {_}', 'world') == 'hello world'
    assert merge('world', 'hello {#}') == 'hello world'

    with pytest.raises(TypeError):
        merge('{_}', '{#}')
Example #4
0
def test_merge_unknown():
    assert merge(object(), 42) == 42
    assert merge(None, 42) == 42
    assert merge(lambda: 42, 42) == 42
Example #5
0
def test_merge_bool():
    assert merge(True, False) == False
Example #6
0
def test_merge_string():
    assert merge('hello', 'world') == 'world'
Example #7
0
def test_merge_dict3():
    a = dict(b=dict(c=[42]))
    b = dict(b=dict())
    assert merge(a, b) == dict(b={'c': [42]})
Example #8
0
def test_merge_dict2():
    a = dict(a=42, b=[42])
    b = dict(b=[])
    assert merge(a, b) == dict(a=42, b=[42])