]> granicus.if.org Git - python/commitdiff
Merged revisions 69585 via svnmerge from
authorTarek Ziadé <ziade.tarek@gmail.com>
Fri, 13 Feb 2009 16:20:24 +0000 (16:20 +0000)
committerTarek Ziadé <ziade.tarek@gmail.com>
Fri, 13 Feb 2009 16:20:24 +0000 (16:20 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69585 | tarek.ziade | 2009-02-13 17:13:16 +0100 (Fri, 13 Feb 2009) | 1 line

  reverted leak fix, to use the one done in py3k branch (r67382)
........

Lib/distutils/tests/test_build_ext.py

index 00630ab9082c071cf77135abef5d3bd6f567352f..dbec65e8d1abb35a92ee46449aab9e2472bbcf83 100644 (file)
@@ -1,5 +1,6 @@
 import sys
 import os
+import tempfile
 import shutil
 from StringIO import StringIO
 
@@ -10,12 +11,15 @@ from distutils import sysconfig
 import unittest
 from test import test_support
 
+# http://bugs.python.org/issue4373
+# Don't load the xx module more than once.
+ALREADY_TESTED = False
+
 class BuildExtTestCase(unittest.TestCase):
     def setUp(self):
         # Create a simple test environment
         # Note that we're making changes to sys.path
-        self.tmp_dir = os.path.join(os.path.dirname(__file__), 'xx')
-        os.mkdir(self.tmp_dir)
+        self.tmp_dir = tempfile.mkdtemp(prefix="pythontest_")
         self.sys_path = sys.path[:]
         sys.path.append(self.tmp_dir)
 
@@ -23,6 +27,7 @@ class BuildExtTestCase(unittest.TestCase):
         shutil.copy(xx_c, self.tmp_dir)
 
     def test_build_ext(self):
+        global ALREADY_TESTED
         xx_c = os.path.join(self.tmp_dir, 'xxmodule.c')
         xx_ext = Extension('xx', [xx_c])
         dist = Distribution({'name': 'xx', 'ext_modules': [xx_ext]})
@@ -45,6 +50,11 @@ class BuildExtTestCase(unittest.TestCase):
         finally:
             sys.stdout = old_stdout
 
+        if ALREADY_TESTED:
+            return
+        else:
+            ALREADY_TESTED = True
+
         import xx
 
         for attr in ('error', 'foo', 'new', 'roj'):