From 51e2db609788cfd809c591959c35e6efd80479f9 Mon Sep 17 00:00:00 2001 From: Daniel Watkins Date: Tue, 28 Aug 2018 14:54:01 -0400 Subject: [PATCH] Add snippet to test default arguments --- tests/snippets/func_defaults.py | 66 +++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 tests/snippets/func_defaults.py diff --git a/tests/snippets/func_defaults.py b/tests/snippets/func_defaults.py new file mode 100644 index 000000000..50e1cf4f2 --- /dev/null +++ b/tests/snippets/func_defaults.py @@ -0,0 +1,66 @@ +def no_args(): + pass + +no_args() + +try: + no_args('one_arg') +except TypeError: + pass +else: + assert False, 'no TypeError raised: 1 arg to no_args' + + +def one_arg(arg): + pass + +one_arg('one_arg') + +try: + one_arg() +except TypeError: + pass +else: + assert False, 'no TypeError raised: no args to one_arg' + +try: + one_arg('one_arg', 'two_arg') +except TypeError: + pass +else: + assert False, 'no TypeError raised: two args to one_arg' + + +def one_default_arg(arg="default"): + return arg + +assert 'default' == one_default_arg() +assert 'arg' == one_default_arg('arg') + +try: + one_default_arg('one_arg', 'two_arg') +except TypeError: + pass +else: + assert False, 'no TypeError raised: two args to one_default_arg' + + +def one_normal_one_default_arg(pos, arg="default"): + return pos, arg + +assert ('arg', 'default') == one_normal_one_default_arg('arg') +assert ('arg', 'arg2') == one_normal_one_default_arg('arg', 'arg2') + +try: + one_normal_one_default_arg() +except TypeError: + pass +else: + assert False, 'no TypeError raised: two args to one_default_arg' + +try: + one_normal_one_default_arg('one', 'two', 'three') +except TypeError: + pass +else: + assert False, 'no TypeError raised: two args to one_default_arg'