[Python-checkins] distutils2: - Remove unnecessary check for empty value from a call to ask

tarek.ziade python-checkins at python.org
Sun Jan 23 15:48:23 CET 2011


tarek.ziade pushed aad812e70fac to distutils2:

http://hg.python.org/distutils2/rev/aad812e70fac
changeset:   866:aad812e70fac
parent:      858:1e1dd6fa92bd
user:        Mathieu Leduc-Hamel <mathieu at lesite.ca>
date:        Wed Dec 08 22:30:49 2010 -0500
summary:
  - Remove unnecessary check for empty value from a call to ask
- Add a couple of small simple test for utils in mkcfg

files:
  distutils2/mkcfg.py
  distutils2/tests/test_mkcfg.py

diff --git a/distutils2/mkcfg.py b/distutils2/mkcfg.py
--- a/distutils2/mkcfg.py
+++ b/distutils2/mkcfg.py
@@ -347,8 +347,6 @@
     def _set_multi(self, question, name):
         existing_values = self.data[name]
         value = ask(question, helptext=_helptext[name]).strip()
-        if value == '':
-            return
         if value not in existing_values:
             existing_values.append(value)
 
diff --git a/distutils2/tests/test_mkcfg.py b/distutils2/tests/test_mkcfg.py
--- a/distutils2/tests/test_mkcfg.py
+++ b/distutils2/tests/test_mkcfg.py
@@ -1,12 +1,46 @@
 """Tests for distutils.mkcfg."""
 import os
+import sys
+import StringIO
 from distutils2.tests import run_unittest, support, unittest
 from distutils2.mkcfg import MainProgram
-
+from distutils2.mkcfg import ask_yn, ask
 
 class MkcfgTestCase(support.TempdirManager,
                     unittest.TestCase):
 
+    def setUp(self):
+        super(MkcfgTestCase, self).setUp()
+        self._stdin = sys.stdin
+        self._stdout = sys.stdout        
+        sys.stdin = StringIO.StringIO()
+        sys.stdout = StringIO.StringIO()
+        
+    def tearDown(self):
+        super(MkcfgTestCase, self).tearDown()
+        sys.stdin = self._stdin
+        sys.stdout = self._stdout
+        
+    def test_ask_yn(self):        
+        sys.stdin.write('y\n')
+        sys.stdin.seek(0)
+        self.assertEqual('y', ask_yn('is this a test'))
+
+    def test_ask(self):
+        sys.stdin.write('a\n')
+        sys.stdin.write('b\n')
+        sys.stdin.seek(0)
+        self.assertEqual('a', ask('is this a test'))
+        self.assertEqual('b', ask(str(range(0,70)), default='c', lengthy=True))
+
+    def test_set_multi(self):
+        main = MainProgram()
+        sys.stdin.write('aaaaa\n')
+        sys.stdin.seek(0)
+        main.data['author'] = []
+        main._set_multi('_set_multi test', 'author')
+        self.assertEqual(['aaaaa'], main.data['author'])
+        
     def test_find_files(self):
         # making sure we scan a project dir correctly
         main = MainProgram()

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


More information about the Python-checkins mailing list