from test_support import verbose, TestFailed | |
if verbose: | |
print 'Running tests on argument handling' | |
try: | |
exec('def f(a, a): pass') | |
raise TestFailed, "duplicate arguments" | |
except SyntaxError: | |
pass | |
try: | |
exec('def f(a = 0, a = 1): pass') | |
raise TestFailed, "duplicate keyword arguments" | |
except SyntaxError: | |
pass | |
try: | |
exec('def f(a): global a; a = 1') | |
raise TestFailed, "variable is global and local" | |
except SyntaxError: | |
pass |