Fredrik Lundh | f785042 | 2001-01-17 21:51:36 +0000 | [diff] [blame] | 1 | from test_support import verbose, TestFailed |
Peter Schneider-Kamp | fdee0f0 | 2000-07-25 22:15:45 +0000 | [diff] [blame] | 2 | |
| 3 | if verbose: |
Jeremy Hylton | 047e2c9 | 2001-01-19 03:25:56 +0000 | [diff] [blame] | 4 | print 'Running tests on argument handling' |
Peter Schneider-Kamp | fdee0f0 | 2000-07-25 22:15:45 +0000 | [diff] [blame] | 5 | |
| 6 | try: |
| 7 | exec('def f(a, a): pass') |
| 8 | raise TestFailed, "duplicate arguments" |
| 9 | except SyntaxError: |
| 10 | pass |
| 11 | |
| 12 | try: |
| 13 | exec('def f(a = 0, a = 1): pass') |
| 14 | raise TestFailed, "duplicate keyword arguments" |
| 15 | except SyntaxError: |
| 16 | pass |
Jeremy Hylton | 047e2c9 | 2001-01-19 03:25:56 +0000 | [diff] [blame] | 17 | |
| 18 | try: |
| 19 | exec('def f(a): global a; a = 1') |
| 20 | raise TestFailed, "variable is global and local" |
| 21 | except SyntaxError: |
| 22 | pass |