| from pychecker2.TestSupport import WarningTester |
| from pychecker2 import ImportChecks |
| |
| class ImportTestCase(WarningTester): |
| def testImportChecks(self): |
| self.silent('import sys; print sys.argv') |
| self.silent('import pychecker2; print pychecker2') |
| self.silent('import pychecker2.utest; print pychecker2.utest') |
| |
| def testImportChecks(self): |
| self.warning('import sys\n' |
| 'print sys.argv\n' |
| 'import sys\n', |
| 3, ImportChecks.ImportCheck.duplicateImport, |
| 'sys', ' in current scope') |
| self.warning('from sys import *\n' |
| 'def f():\n' |
| ' def g():\n' |
| ' from sys import argv\n' |
| ' return argv\n' |
| ' return g() + g()\n' |
| 'print argv\n', |
| 4, ImportChecks.ImportCheck.duplicateImport, 'argv', |
| ' of import in parent scope <ModuleScope: global>') |
| self.warning('import no_such_module\n', |
| 1, ImportChecks.ImportCheck.importError, 'no_such_module', |
| 'No module named no_such_module') |
| self.warning('from pychecker2.utest.data import *\n' |
| 'import exceptions\n' |
| 'print exceptions\n', |
| 2, ImportChecks.ImportCheck.shadowImport, |
| 'exceptions', 'pychecker2.utest.data', 1) |
| |