]> granicus.if.org Git - python/commitdiff
removed the print statements and added a test
authorTarek Ziadé <ziade.tarek@gmail.com>
Sun, 12 Apr 2009 14:53:51 +0000 (14:53 +0000)
committerTarek Ziadé <ziade.tarek@gmail.com>
Sun, 12 Apr 2009 14:53:51 +0000 (14:53 +0000)
Lib/distutils/command/config.py
Lib/distutils/tests/test_config_cmd.py [new file with mode: 0644]

index 6b358cf2505bb3f5b35a4e082330c22e356337eb..c36456ad6ac30e53fee0d576d6dbe1b3ef6f46ec 100644 (file)
@@ -354,13 +354,17 @@ class config (Command):
 
 # class config
 
+def dump_file(filename, head=None):
+    """Dumps a file content into log.info.
 
-def dump_file (filename, head=None):
+    If head is not None, will be dumped before the file content.
+    """
     if head is None:
-        print filename + ":"
+        log.info('%s' % filename)
     else:
-        print head
-
+        log.info(head)
     file = open(filename)
-    sys.stdout.write(file.read())
-    file.close()
+    try:
+        log.info(file.read())
+    finally:
+        file.close()
diff --git a/Lib/distutils/tests/test_config_cmd.py b/Lib/distutils/tests/test_config_cmd.py
new file mode 100644 (file)
index 0000000..6fd1776
--- /dev/null
@@ -0,0 +1,42 @@
+"""Tests for distutils.command.config."""
+import unittest
+import os
+
+from distutils.command.config import dump_file
+from distutils.tests import support
+from distutils import log
+
+class ConfigTestCase(support.LoggingSilencer,
+                     support.TempdirManager,
+                     unittest.TestCase):
+
+    def _info(self, msg):
+        for line in msg.splitlines():
+            self._logs.append(line)
+
+    def setUp(self):
+        super(ConfigTestCase, self).setUp()
+        self._logs = []
+        self.old_log = log.info
+        log.info = self._info
+
+    def tearDown(self):
+        log.info = self.old_log
+        super(ConfigTestCase, self).tearDown()
+
+    def test_dump_file(self):
+        this_file = os.path.splitext(__file__)[0] + '.py'
+        f = open(this_file)
+        try:
+            numlines = len(f.readlines())
+        finally:
+            f.close()
+
+        dump_file(this_file, 'I am the header')
+        self.assertEquals(len(self._logs), numlines+1)
+
+def test_suite():
+    return unittest.makeSuite(ConfigTestCase)
+
+if __name__ == "__main__":
+    unittest.main(defaultTest="test_suite")