示例#1
0
def test_getter_handle_multi():

    get_test = Getter(providing_args=["foo"])
    get_test_2 = Getter(providing_args=["foo"])

    @getter([get_test, get_test_2])
    def getter_for_get_test(sender, *args, **kwargs):
        return kwargs["foo"]

    assert get_test.get(str, foo="test 1") == "test 1"
    assert get_test_2.get(str, foo="test 2") == "test 2"
示例#2
0
def test_getter_with_with_sender_multi():

    get_test = Getter(providing_args=["foo"])

    @getter(get_test)
    def getter_for_get_test(sender, *args, **kwargs):
        if sender is int:
            return kwargs["foo"] * 7
        return int(kwargs["foo"]) * 7

    assert get_test.get(str, foo="3") == 21
    assert get_test.get(int, foo=3) == 21
示例#3
0
def test_getter_with_with_sender():

    get_test = Getter(providing_args=["foo"])

    @getter(get_test, sender=str)
    def getter_for_get_test(sender, *args, **kwargs):
        return kwargs["foo"]

    assert get_test.get(str, foo="BOOM") == "BOOM"
示例#4
0
def test_getter_with_with_sender_int():

    get_test = Getter(providing_args=["foo"])

    @getter(get_test, sender=int)
    def getter_for_get_test(sender, *args, **kwargs):
        return kwargs["foo"] * 7

    assert get_test.get(int, foo=3) == 21
示例#5
0
def test_getter_with_arg():

    get_test = Getter(providing_args=["foo"])

    @getter(get_test)
    def getter_for_get_test(*args, **kwargs):
        return kwargs["foo"]

    assert get_test.get(foo=3) == 3
示例#6
0
def test_getter():

    get_test = Getter(providing_args=["foo"])

    @getter(get_test)
    def getter_for_get_test(*args, **kwargs):
        return 2

    assert get_test.get() == 2
示例#7
0
def test_getter_multi_sender():
    get_test = Getter(providing_args=["foo"])

    @getter(get_test, sender=(str, int))
    def getter_for_get_test(sender, *args, **kwargs):
        return kwargs["foo"]

    assert get_test.get(str, foo="test") == "test"
    assert get_test.get(int, foo="test") == "test"
示例#8
0
def test_getter_handle_order_2():

    get_test = Getter(providing_args=["foo"])

    @getter(get_test)
    def getter_for_get_test(sender, *args, **kwargs):
        return 1

    @getter(get_test)
    def getter_for_get_test_2(sender, *args, **kwargs):
        return 2

    assert get_test.get(str, foo="bar") == 1
示例#9
0
def test_no_getter():

    get_test = Getter(providing_args=["foo"])

    assert get_test.get() is None