Ejemplo n.º 1
0
def test_list_root():
    l = [-1]
    assert lens()[0](1)(l) == [1]
    assert l == [-1]
Ejemplo n.º 2
0
def test_pfun_list_attribute():
    x = VanillaClass(List([0]))
    assert lens().attribute[0](1)(x).attribute == List([1])
    assert x.attribute == List([0])
Ejemplo n.º 3
0
def test_pfun_nested_list():
    l = List([List([-1])])
    assert lens()[0][0](1)(l) == List([List([1])])
    assert l == List([List([-1])])
Ejemplo n.º 4
0
def test_pfun_dict_root():
    d = Dict({})
    assert lens()['key']('value')(d) == Dict({'key': 'value'})
    assert d == Dict({})
Ejemplo n.º 5
0
def test_vanilla_class_root():
    x = VanillaClass('a')
    assert lens().attribute('b')(x).attribute == 'b'
    assert x.attribute == 'a'
Ejemplo n.º 6
0
def test_tuple_index_error():
    t = ()
    with pytest.raises(IndexError):
        lens()[0](1)(t)
Ejemplo n.º 7
0
def test_dict_root():
    d = {}
    assert lens()['key']('value')(d) == {'key': 'value'}
    assert d == {}
Ejemplo n.º 8
0
def test_dict_immutable_attribute():
    x = ImmutableClass({})
    assert lens().attribute['key']('value')(x) == ImmutableClass(
        {'key': 'value'})
    assert x == ImmutableClass({})
Ejemplo n.º 9
0
def test_pfun_dict_attribute():
    x = VanillaClass(Dict({}))
    assert lens().attribute['key']('value')(x).attribute == Dict(
        {'key': 'value'})
    assert x.attribute == Dict({})
Ejemplo n.º 10
0
def test_tuple_immutable_attribute():
    x = ImmutableClass((0, ))
    assert lens().attribute[0](1)(x).attribute == (1, )
    assert x == ImmutableClass((0, ))
Ejemplo n.º 11
0
def test_dict_attribute():
    x = VanillaClass({})
    assert lens().attribute['key']('value')(x).attribute == {'key': 'value'}
    assert x.attribute == {}
Ejemplo n.º 12
0
def test_tuple_attribute():
    x = VanillaClass((0, ))
    assert lens().attribute[0](1)(x).attribute == (1, )
    assert x.attribute == (0, )
Ejemplo n.º 13
0
def test_list_immutable_attribute():
    x = ImmutableClass([0])
    assert lens().attribute[0](1)(x) == ImmutableClass([1])
    assert x == ImmutableClass([0])
Ejemplo n.º 14
0
def test_list_attribute():
    x = VanillaClass([0])
    assert lens().attribute[0](1)(x).attribute == [1]
    assert x.attribute == [0]
Ejemplo n.º 15
0
def test_nested_list():
    l = [[0]]
    assert lens()[0][0](1)(l) == [[1]]
    assert l == [[0]]
Ejemplo n.º 16
0
def test_nested_vanilla():
    x = VanillaClass(VanillaClass('a'))
    assert lens().attribute.attribute('b')(x).attribute.attribute == 'b'
    assert x.attribute.attribute == 'a'
Ejemplo n.º 17
0
def test_tuple_root():
    t = (-1, )
    assert lens()[0](1)(t) == (1, )
    assert t == (-1, )
Ejemplo n.º 18
0
def test_nested_immutable():
    x = ImmutableClass(ImmutableClass('a'))
    assert lens().attribute.attribute('b')(x) == ImmutableClass(
        ImmutableClass('b'))
    assert x == ImmutableClass(ImmutableClass('a'))
Ejemplo n.º 19
0
def test_nested_tuple():
    t = ((-1, ), )
    assert lens()[0][0](1)(t) == ((1, ), )
    assert t == ((-1, ), )
Ejemplo n.º 20
0
def test_nested_named_tuple():
    x = NamedTupleClass(NamedTupleClass('a'))
    assert lens().attribute.attribute('b')(x) == NamedTupleClass(
        NamedTupleClass('b'))
    assert x == NamedTupleClass(NamedTupleClass('a'))
Ejemplo n.º 21
0
def test_nested_dict():
    d = {'key': {}}
    assert lens()['key']['key']('value')(d) == {'key': {'key': 'value'}}
    assert d == {'key': {}}
Ejemplo n.º 22
0
def test_pfun_list_root():
    l = List([-1])
    assert lens()[0](1)(l) == List([1])
    assert l == List([-1])
Ejemplo n.º 23
0
def test_nested_pfun_dict():
    d = Dict({'key': Dict({})})
    assert lens()['key']['key']('value')(d) == Dict(
        {'key': Dict({'key': 'value'})})
    assert d == Dict({'key': Dict({})})
Ejemplo n.º 24
0
def test_pfun_list_index_error():
    l = List([])
    with pytest.raises(IndexError):
        lens()[0]('')(l)
Ejemplo n.º 25
0
def test_immutable_class_root():
    x = ImmutableClass('a')
    assert lens().attribute('b')(x) == ImmutableClass('b')
    assert x == ImmutableClass('a')
Ejemplo n.º 26
0
def test_named_tuple_root():
    x = NamedTupleClass('a')
    assert lens().attribute('b')(x) == NamedTupleClass('b')
    assert x == NamedTupleClass('a')