]> granicus.if.org Git - python/commitdiff
Rewrite pipe code using subprocess, to make sure the
authorMartin v. Löwis <martin@v.loewis.de>
Thu, 23 Mar 2006 18:16:43 +0000 (18:16 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Thu, 23 Mar 2006 18:16:43 +0000 (18:16 +0000)
child process is closed when the test completes.

Lib/test/test_quopri.py

index ed66dfcb782160c79cb55617d0cb5363b3f21770..daece97202ac334ba166c13e43487d91fe68706c 100644 (file)
@@ -1,7 +1,7 @@
 from test import test_support
 import unittest
 
-import sys, os, cStringIO
+import sys, os, cStringIO, subprocess
 import quopri
 
 
@@ -176,17 +176,17 @@ zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz''')
 
     def test_scriptencode(self):
         (p, e) = self.STRINGS[-1]
-        (cin, cout) = os.popen2("%s -mquopri" % sys.executable)
-        cin.write(p)
-        cin.close()
-        self.assert_(cout.read() == e)
+        process = subprocess.Popen([sys.executable, "-mquopri"],
+                                   stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+        cout, cerr = process.communicate(p)
+        self.assert_(cout == e)
 
     def test_scriptdecode(self):
         (p, e) = self.STRINGS[-1]
-        (cin, cout) = os.popen2("%s -mquopri -d" % sys.executable)
-        cin.write(e)
-        cin.close()
-        self.assert_(cout.read() == p)
+        process = subprocess.Popen([sys.executable, "-mquopri", "-d"],
+                                   stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+        cout, cerr = process.communicate(e)
+        self.assert_(cout == p)
 
 def test_main():
     test_support.run_unittest(QuopriTestCase)