Beispiel #1
0
def test_param_info_regular_function():
    def foo(a, b, c='bar'):
        return a + b

    res = dfc._param_info(foo)
    assert res == OrderedDict([('a', '::unspecified::'),
                               ('b', '::unspecified::'), ('c', 'bar')])
Beispiel #2
0
def test_param_info_positional_curried_function():
    @t.curry
    def foo(a, b, c='bar'):
        return a + b

    myfoo = foo(5)
    res = dfc._param_info(myfoo)
    assert res == OrderedDict([('b', '::unspecified::'), ('c', 'bar')])
Beispiel #3
0
def test_param_info_with_cytoolz_curry():
    @cyt.curry
    def foo(a, b, c='bar'):
        return a + b

    myfoo = foo(c='baz')
    another_foo = myfoo(55)

    res = dfc._param_info(another_foo)
    assert res == OrderedDict([('b', '::unspecified::')])
Beispiel #4
0
def test_param_info_nested_curried_function():
    @t.curry
    def foo(a, b, c='bar'):
        return a + b

    myfoo = foo(c='baz')
    another_foo = myfoo(55)

    res = dfc._param_info(another_foo)
    assert res == OrderedDict([('b', '::unspecified::')])
Beispiel #5
0
def test_param_info_keyword_curried_function():
    @t.curry
    def foo(a, b, c='bar'):
        return a + b

    myfoo = foo(c='baz')

    res = dfc._param_info(myfoo)
    assert res == OrderedDict([('a', '::unspecified::'),
                               ('b', '::unspecified::')])