diff options
author | Damien George <damien.p.george@gmail.com> | 2014-06-08 12:58:32 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-06-08 12:58:32 +0100 |
commit | 9e951498b28706bac7347d3c599977c13d9515c4 (patch) | |
tree | 9094381a31a666280a5f2a4b713fa07ea19dc371 | |
parent | 049a7a81531a67e068d926ad50260578fb79f94c (diff) | |
download | micropython-9e951498b28706bac7347d3c599977c13d9515c4.tar.gz micropython-9e951498b28706bac7347d3c599977c13d9515c4.zip |
tests: Add more tests for default keyword-only args.
-rw-r--r-- | tests/basics/fun-kwonly.py | 9 | ||||
-rw-r--r-- | tests/basics/fun-kwonlydef.py | 36 |
2 files changed, 36 insertions, 9 deletions
diff --git a/tests/basics/fun-kwonly.py b/tests/basics/fun-kwonly.py index dd654eb441..bdff3a8210 100644 --- a/tests/basics/fun-kwonly.py +++ b/tests/basics/fun-kwonly.py @@ -43,15 +43,6 @@ def f(a, *, b, **kw): f(1, b=2) f(1, b=2, c=3) -# with a default value -def g(a, *, b=2, c): - print(a, b, c) - -g(1, c=3) -g(1, b=3, c=4) -g(1, **{'c':3}) -g(1, **{'b':'3', 'c':4}) - # with named star def f(*a, b, c): print(a, b, c) diff --git a/tests/basics/fun-kwonlydef.py b/tests/basics/fun-kwonlydef.py new file mode 100644 index 0000000000..56a08ee81c --- /dev/null +++ b/tests/basics/fun-kwonlydef.py @@ -0,0 +1,36 @@ +# test function args, keyword only with default value + +# a single arg with a default +def f1(*, a=1): + print(a) +f1() +f1(a=2) + +# 1 arg default, 1 not +def f2(*, a=1, b): + print(a, b) +f2(b=2) +f2(a=2, b=3) + +# 1 positional, 1 arg default, 1 not +def f3(a, *, b=2, c): + print(a, b, c) +f3(1, c=3) +f3(1, b=3, c=4) +f3(1, **{'c':3}) +f3(1, **{'b':'3', 'c':4}) + +# many args, not all with defaults +def f4(*, a=1, b, c=3, d, e=5, f): + print(a, b, c, d, e, f) +f4(b=2, d=4, f=6) +f4(a=11, b=2, d=4, f=6) +f4(a=11, b=2, c=33, d=4, e=55, f=6) +f4(f=6, e=55, d=4, c=33, b=2, a=11) + +# positional with default, then keyword only +def f5(a, b=4, *c, d=8): + print(a, b, c, d) +f5(1) +f5(1, d=9) +f5(1, b=44, d=9) |