symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/test_transformer.py
author MattD <mattd@symbian.org>
Wed, 10 Mar 2010 16:08:53 +0000
changeset 48 34cd6bf038ac
parent 1 2fb8b9db1c86
permissions -rw-r--r--
Very rough additions to get baseport building after the header reorganisation. Original hardcoded systeminclude paths still left in.

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