r58750 - python/trunk/Lib/test/test_import.py
![](https://secure.gravatar.com/avatar/8ac615df352a970211b0e3d94a307c6d.jpg?s=120&d=mm&r=g)
Author: christian.heimes Date: Thu Nov 1 20:48:10 2007 New Revision: 58750 Modified: python/trunk/Lib/test/test_import.py Log: Backport of import tests for bug http://bugs.python.org/issue1293 and bug http://bugs.python.org/issue1342 Modified: python/trunk/Lib/test/test_import.py ============================================================================== --- python/trunk/Lib/test/test_import.py (original) +++ python/trunk/Lib/test/test_import.py Thu Nov 1 20:48:10 2007 @@ -1,11 +1,13 @@ -from test.test_support import TESTFN, run_unittest, catch_warning +from test.test_support import TESTFN, run_unittest, catch_warning import unittest import os import random +import shutil import sys import py_compile import warnings +from test.test_support import unlink, TESTFN, unload def remove_files(name): @@ -221,8 +223,47 @@ warnings.simplefilter('error', ImportWarning) self.assertRaises(ImportWarning, __import__, "site-packages") +class UnicodePathsTests(unittest.TestCase): + SAMPLES = ('test', 'testäöüß', 'testéè', 'test°³²') + path = TESTFN + + def setUp(self): + os.mkdir(self.path) + self.syspath = sys.path[:] + + def tearDown(self): + shutil.rmtree(self.path) + sys.path = self.syspath + + def test_sys_path(self): + for i, subpath in enumerate(self.SAMPLES): + path = os.path.join(self.path, subpath) + os.mkdir(path) + self.failUnless(os.path.exists(path), os.listdir(self.path)) + f = open(os.path.join(path, 'testimport%i.py' % i), 'w') + f.write("testdata = 'unicode path %i'\n" % i) + f.close() + sys.path.append(path) + try: + mod = __import__("testimport%i" % i) + except ImportError: + print >>sys.stderr, path + raise + self.assertEqual(mod.testdata, 'unicode path %i' % i) + unload("testimport%i" % i) + + # http://bugs.python.org/issue1293 + def test_trailing_slash(self): + f = open(os.path.join(self.path, 'test_trailing_slash.py'), 'w') + f.write("testdata = 'test_trailing_slash'") + f.close() + sys.path.append(self.path+'/') + mod = __import__("test_trailing_slash") + self.assertEqual(mod.testdata, 'test_trailing_slash') + unload("test_trailing_slash") + def test_main(verbose=None): - run_unittest(ImportTest) + run_unittest(ImportTest, UnicodePathsTests) if __name__ == '__main__': test_main()
participants (1)
-
christian.heimes