| 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 |