added builtin b/w compat module.

changed testing of exec.
This commit is contained in:
Guido van Rossum 1993-10-22 14:24:22 +00:00
parent b37954f917
commit b3b09c97ce
4 changed files with 25 additions and 11 deletions

3
Lib/builtin.py Executable file
View File

@ -0,0 +1,3 @@
# B/W compat hack so code that says "import builtin" won't break after
# name change from builtin to __builtin__.
from __builtin__ import *

View File

@ -25,7 +25,7 @@ def f2(a1, a2):
raise TestFailed, 'f2 called with ' + `a1, a2`
def f3(a1, a2, a3):
if a1 != 1 or a2 != 2 or a3 != 3:
raise TestFailed, 'f2 called with ' + `a1, a2, a3`
raise TestFailed, 'f3 called with ' + `a1, a2, a3`
apply(f0, ())
apply(f1, (1,))
apply(f2, (1, 2))
@ -81,14 +81,6 @@ print 'eval'
if eval('1+1') <> 2: raise TestFailed, 'eval(\'1+1\')'
if eval(' 1+1\n') <> 2: raise TestFailed, 'eval(\' 1+1\\n\')'
print 'exec'
z = 0
exec('z=1+1\n')
if z <> 2: raise TestFailed, 'exec(\'z=1+1\'\\n)'
z = 0
exec('z=1+1')
if z <> 2: raise TestFailed, 'exec(\'z=1+1\')'
print 'execfile'
z = 0
f = open(TESTFN, 'w')

View File

@ -97,7 +97,7 @@ def v3(a, (b, c), *rest): pass
print 'simple_stmt'
x = 1; pass; del x
### small_stmt: expr_stmt | print_stmt | pass_stmt | del_stmt | flow_stmt | import_stmt
### small_stmt: expr_stmt | print_stmt | pass_stmt | del_stmt | flow_stmt | import_stmt | global_stmt | access_stmt | exec_stmt
# Tested below
print 'expr_stmt' # (exprlist '=')* exprlist
@ -165,6 +165,25 @@ def f():
global a, b
global one, two, three, four, five, six, seven, eight, nine, ten
print 'exec_stmt' # 'exec' expr ['in' expr [',' expr]]
def f():
z = None
del z
exec 'z=1+1\n'
if z <> 2: raise TestFailed, 'exec \'z=1+1\'\\n'
del z
exec 'z=1+1'
if z <> 2: raise TestFailed, 'exec \'z=1+1\''
f()
g = {}
exec 'z = 1' in g
if g <> {'z': 1}: raise TestFailed, 'exec \'z = 1\' in g'
g = {}
l = {}
exec 'global a; a = 1; b = 2' in g, l
if (g, l) <> ({'a':1}, {'b':2}): raise TestFailed, 'exec ... in g, l'
### compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | funcdef | classdef
# Tested below

View File

@ -35,6 +35,7 @@ import_stmt
[5]
[6]
global_stmt
exec_stmt
if_stmt
while_stmt
for_stmt
@ -71,7 +72,6 @@ coerce
dir
divmod
eval
exec
execfile
float
getattr