[Python-checkins] distutils2: Add tests for tests.support (#12659), thanks to Francisco Martín Brugué

eric.araujo python-checkins at python.org
Tue Nov 15 15:06:00 CET 2011


http://hg.python.org/distutils2/rev/659bf2a679d2
changeset:   1256:659bf2a679d2
user:        Éric Araujo <merwok at netwok.org>
date:        Tue Nov 15 15:03:54 2011 +0100
summary:
  Add tests for tests.support (#12659), thanks to Francisco Martín Brugué

files:
  CHANGES.txt                      |   1 +
  CONTRIBUTORS.txt                 |   1 +
  distutils2/tests/test_support.py |  85 ++++++++++++++++++++
  3 files changed, 87 insertions(+), 0 deletions(-)


diff --git a/CHANGES.txt b/CHANGES.txt
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -159,6 +159,7 @@
   install_dir [éric]
 - Remove verbose arguments for Command and Compiler classes as well as util
   functions, obsoleted by logging [éric]
+- #12659: Add tests for tests.support [francisco]
 
 
 1.0a3 - 2010-10-08
diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt
--- a/CONTRIBUTORS.txt
+++ b/CONTRIBUTORS.txt
@@ -17,6 +17,7 @@
 - Anthony Baxter
 - Erik Bray
 - C. Titus Brown
+- Francisco Martín Brugué
 - Nicolas Cadou
 - Godefroid Chapelle
 - Christophe Combelles
diff --git a/distutils2/tests/test_support.py b/distutils2/tests/test_support.py
new file mode 100644
--- /dev/null
+++ b/distutils2/tests/test_support.py
@@ -0,0 +1,85 @@
+import os
+import tempfile
+
+from distutils2.dist import Distribution
+from distutils2.tests import support, unittest
+
+
+class TestingSupportTestCase(unittest.TestCase):
+
+    def test_fake_dec(self):
+        @support.fake_dec(1, 2, k=3)
+        def func(arg0, *args, **kargs):
+            return arg0, args, kargs
+        self.assertEqual(func(-1, -2, k=-3), (-1, (-2,), {'k': -3}))
+
+    def test_TempdirManager(self):
+        files = {}
+
+        class Tester(support.TempdirManager, unittest.TestCase):
+
+            def runTest(self):
+                # empty method required for the backport
+                pass
+		
+            def test_mktempfile(self2):
+                tmpfile = self2.mktempfile()
+                files['test_mktempfile'] = tmpfile.name
+                self.assertTrue(os.path.isfile(tmpfile.name))
+
+            def test_mkdtemp(self2):
+                tmpdir = self2.mkdtemp()
+                files['test_mkdtemp'] = tmpdir
+                self.assertTrue(os.path.isdir(tmpdir))
+
+            def test_write_file(self2):
+                tmpdir = self2.mkdtemp()
+                files['test_write_file'] = tmpdir
+                self2.write_file((tmpdir, 'file1'), 'me file 1')
+                file1 = os.path.join(tmpdir, 'file1')
+                self.assertTrue(os.path.isfile(file1))
+                text = ''
+                f = open(file1, 'r')
+                try:
+                    text = f.read()
+                finally:
+                    f.close()
+                self.assertEqual(text, 'me file 1')
+
+            def test_create_dist(self2):
+                project_dir, dist = self2.create_dist()
+                files['test_create_dist'] = project_dir
+                self.assertTrue(os.path.isdir(project_dir))
+                self.assertIsInstance(dist, Distribution)
+
+            def test_assertIsFile(self2):
+                fd, fn = tempfile.mkstemp()
+                os.close(fd)
+                self.addCleanup(support.unlink, fn)
+                self2.assertIsFile(fn)
+                self.assertRaises(AssertionError, self2.assertIsFile, 'foO')
+
+            def test_assertIsNotFile(self2):
+                tmpdir = self2.mkdtemp()
+                self2.assertIsNotFile(tmpdir)
+
+        tester = Tester()
+        for name in ('test_mktempfile', 'test_mkdtemp', 'test_write_file',
+                     'test_create_dist', 'test_assertIsFile',
+                     'test_assertIsNotFile'):
+            tester.setUp()
+            try:
+                getattr(tester, name)()
+            finally:
+                tester.tearDown()
+
+            # check clean-up
+            if name in files:
+                self.assertFalse(os.path.exists(files[name]))
+
+
+def test_suite():
+    return unittest.makeSuite(TestingSupportTestCase)
+
+if __name__ == "__main__":
+    unittest.main(defaultTest="test_suite")

-- 
Repository URL: http://hg.python.org/distutils2


More information about the Python-checkins mailing list