diff options
author | Mark Dickinson <dickinsm@gmail.com> | 2010-07-04 18:11:51 (GMT) |
---|---|---|
committer | Mark Dickinson <dickinsm@gmail.com> | 2010-07-04 18:11:51 (GMT) |
commit | 2cc8a5e4903b688f53e12141e3813d044dc05600 (patch) | |
tree | a995ee5e198c4a3807fcfc7ba8c9f72f9f90929d /Lib/test/test_parser.py | |
parent | 7cb6f2fe109f0231c4b11de03d2d5d96ca656f4d (diff) | |
download | cpython-2cc8a5e4903b688f53e12141e3813d044dc05600.zip cpython-2cc8a5e4903b688f53e12141e3813d044dc05600.tar.gz cpython-2cc8a5e4903b688f53e12141e3813d044dc05600.tar.bz2 |
Issue #9130: Fix validation of relative imports in parser module.
Diffstat (limited to 'Lib/test/test_parser.py')
-rw-r--r-- | Lib/test/test_parser.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Lib/test/test_parser.py b/Lib/test/test_parser.py index 96f14f6..ade7431 100644 --- a/Lib/test/test_parser.py +++ b/Lib/test/test_parser.py @@ -189,6 +189,12 @@ class RoundtripLegalSyntaxTestCase(unittest.TestCase): self.check_suite("import sys as system, math") self.check_suite("import sys, math as my_math") + def test_relative_imports(self): + self.check_suite("from . import name") + self.check_suite("from .. import name") + self.check_suite("from .pkg import name") + self.check_suite("from ..pkg import name") + def test_pep263(self): self.check_suite("# -*- coding: iso-8859-1 -*-\n" "pass\n") @@ -464,6 +470,20 @@ class IllegalSyntaxTestCase(unittest.TestCase): (0, '')) self.check_bad_tree(tree, "malformed global ast") + def test_missing_import_source(self): + # from import a + tree = \ + (257, + (267, + (268, + (269, + (281, + (283, (1, 'from'), (1, 'import'), + (286, (284, (1, 'fred')))))), + (4, ''))), + (4, ''), (0, '')) + self.check_bad_tree(tree, "from import a") + class CompileTestCase(unittest.TestCase): |