Exemplo n.º 1
0
    class C:
        @Attr.set_value
        def x(self, attr, value):
            attr.value = value * 5

        y = Attr()

        @y.set_value
        def y(self, attr, value):
            attr.value = value * 2
Exemplo n.º 2
0
    class C:
        x = Attr()

        @x.init_value
        def x(self, attr, value):
            attr.value = value.upper()

        @Attr.init_value
        def y(self, attr, value):
            attr.value = value.lower()
Exemplo n.º 3
0
    class C:
        @Attr.get_value
        def x(self, attr):
            return attr.value * 5 if attr.value else attr.value

        y = Attr()

        @y.get_value
        def y(self, attr):
            return attr.value * 2 if attr.value else attr.value
Exemplo n.º 4
0
    class C:
        @Attr.init_value
        def x(self, attr):
            attr.value = 5

        y = Attr()

        @y.init_value
        def y(self, attr):
            attr.value = 20
Exemplo n.º 5
0
 class D(C):
     z = Attr()
Exemplo n.º 6
0
 class C:
     x = Attr(safe=True)
Exemplo n.º 7
0
 class C:
     x = Attr(safe=True, cli=True)
     y = Attr(cli='y')
Exemplo n.º 8
0
    class C:
        x = Attr()

        @Attr
        def y(self, attr):
            return attr.value
Exemplo n.º 9
0
 class C:
     w = Attr()
     x = Attr()
     y = Attr()
Exemplo n.º 10
0
 class D(C):
     a = Attr()
     x = 5
     b = Attr()
Exemplo n.º 11
0
def test_cannot_reset_attr_on_attrs(xy_container_cls):
    with pytest.raises(AttributeError):
        xy_container_cls.attrs.x = Attr('x', default=100)
Exemplo n.º 12
0
 class D(C):
     y = Attr()
Exemplo n.º 13
0
 class E(D):
     z = Attr()
Exemplo n.º 14
0
def test_repr():
    x = Attr(name='x')
    assert repr(x) == "<Attr 'x'>"
Exemplo n.º 15
0
def test_cannot_set_default_value_and_required_together():
    with pytest.raises(ValueError):
        Attr(required=True, default=1)
Exemplo n.º 16
0
def test_cannot_set_nonexistent_attribute_of_attr():
    x = Attr()

    with pytest.raises(AttributeError):
        x.safe = True
Exemplo n.º 17
0
 class C:
     x = Attr()
Exemplo n.º 18
0
    class C:
        attrs_cls = CustomAttrs
        bound_attr_cls = CustomBoundAttr

        x = Attr()
Exemplo n.º 19
0
 class C:
     x = Attr('x')
     y = Attr('y')
     z = Attr('z', required=True)
Exemplo n.º 20
0
 class C:
     x = Attr()
     y = 10  # non-attr