diff options
author | Benjamin Peterson <benjamin@python.org> | 2010-05-07 20:47:43 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2010-05-07 20:47:43 (GMT) |
commit | 135d87c23cd7e486d8b85adc0488f4fef1dbdc60 (patch) | |
tree | 50a8faa7e2f76d238821f154be2b70bea979ad4b | |
parent | ad465f904ba85b94211054881a41d7230474ebc7 (diff) | |
download | cpython-135d87c23cd7e486d8b85adc0488f4fef1dbdc60.zip cpython-135d87c23cd7e486d8b85adc0488f4fef1dbdc60.tar.gz cpython-135d87c23cd7e486d8b85adc0488f4fef1dbdc60.tar.bz2 |
Merged revisions 80939 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r80939 | benjamin.peterson | 2010-05-07 15:45:07 -0500 (Fri, 07 May 2010) | 1 line
revert r80932; it breaks windows
........
-rw-r--r-- | Lib/unittest/loader.py | 15 | ||||
-rw-r--r-- | Lib/unittest/test/test_discovery.py | 39 |
2 files changed, 1 insertions, 53 deletions
diff --git a/Lib/unittest/loader.py b/Lib/unittest/loader.py index 76c4e11..a45dffa 100644 --- a/Lib/unittest/loader.py +++ b/Lib/unittest/loader.py @@ -178,10 +178,7 @@ class TestLoader(object): if not top_level_dir in sys.path: # all test modules must be importable from the top level directory - # should we *unconditionally* put the start directory in first - # in sys.path to minimise likelihood of conflicts between installed - # modules and development versions? - sys.path.insert(0, top_level_dir) + sys.path.append(top_level_dir) self._top_level_dir = top_level_dir is_not_importable = False @@ -254,16 +251,6 @@ class TestLoader(object): except: yield _make_failed_import_test(name, self.suiteClass) else: - mod_file = os.path.abspath(getattr(module, '__file__', full_path)) - realpath = os.path.splitext(mod_file)[0] - fullpath_noext = os.path.splitext(full_path)[0] - if realpath.lower() != fullpath_noext.lower(): - module_dir = os.path.dirname(realpath) - mod_name = os.path.splitext(os.path.basename(full_path))[0] - expected_dir = os.path.dirname(full_path) - msg = ("%r module incorrectly imported from %r. Expected %r. " - "Is this module globally installed?") - raise ImportError(msg % (mod_name, module_dir, expected_dir)) yield self.loadTestsFromModule(module) elif os.path.isdir(full_path): if not os.path.isfile(os.path.join(full_path, '__init__.py')): diff --git a/Lib/unittest/test/test_discovery.py b/Lib/unittest/test/test_discovery.py index 8253580..1b0f08b 100644 --- a/Lib/unittest/test/test_discovery.py +++ b/Lib/unittest/test/test_discovery.py @@ -294,45 +294,6 @@ class TestDiscovery(unittest.TestCase): self.assertTrue(program.failfast) self.assertTrue(program.catchbreak) - def test_detect_module_clash(self): - class Module(object): - __file__ = 'bar/foo.py' - sys.modules['foo'] = Module - full_path = os.path.abspath('foo') - original_listdir = os.listdir - original_isfile = os.path.isfile - original_isdir = os.path.isdir - - def cleanup(): - os.listdir = original_listdir - os.path.isfile = original_isfile - os.path.isdir = original_isdir - del sys.modules['foo'] - if full_path in sys.path: - sys.path.remove(full_path) - self.addCleanup(cleanup) - - def listdir(_): - return ['foo.py'] - def isfile(_): - return True - def isdir(_): - return True - os.listdir = listdir - os.path.isfile = isfile - os.path.isdir = isdir - - loader = unittest.TestLoader() - - mod_dir = os.path.abspath('bar') - expected_dir = os.path.abspath('foo') - msg = (r"^'foo' module incorrectly imported from %r\. Expected %r\. " - "Is this module globally installed\?$") % (mod_dir, expected_dir) - self.assertRaisesRegexp( - ImportError, msg, loader.discover, - start_dir='foo', pattern='foo.py' - ) - self.assertEqual(sys.path[0], full_path) if __name__ == '__main__': unittest.main() |