[Python-checkins] python/dist/src/Lib/test test_transformer.py, NONE, 1.1

mwh at users.sourceforge.net mwh at users.sourceforge.net
Mon Jul 12 15:15:58 CEST 2004


Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13510/Lib/test
Added Files:
	test_transformer.py 
Log Message:
this is patch
[ 988698 ] compiler.transformer fix for (a, b) = 1, 2
fixing bug
[ 988613 ] compiler.transformer and tuple unpacking
--- NEW FILE: test_transformer.py ---
import unittest
from test import test_support
from compiler import transformer, ast
from compiler import compile
class Tests(unittest.TestCase):
 
 def testMultipleLHS(self):
 """ Test multiple targets on the left hand side. """
 
 snippets = ['a, b = 1, 2',
 '(a, b) = 1, 2',
 '((a, b), c) = (1, 2), 3']
 for s in snippets:
 a = transformer.parse(s)
 assert isinstance(a, ast.Module)
 child1 = a.getChildNodes()[0]
 assert isinstance(child1, ast.Stmt)
 child2 = child1.getChildNodes()[0]
 assert isinstance(child2, ast.Assign)
 
 # This actually tests the compiler, but it's a way to assure the ast 
 # is correct
 c = compile(s, '<string>', 'single')
 vals = {}
 exec c in vals
 assert vals['a'] == 1
 assert vals['b'] == 2
def test_main():
 test_support.run_unittest(
 Tests
 )
if __name__ == "__main__":
 test_main()


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /