diff options
Diffstat (limited to 'Lib/test/test_quopri.py')
| -rw-r--r-- | Lib/test/test_quopri.py | 21 | 
1 files changed, 12 insertions, 9 deletions
diff --git a/Lib/test/test_quopri.py b/Lib/test/test_quopri.py index ed66dfcb78..631c974358 100644 --- a/Lib/test/test_quopri.py +++ b/Lib/test/test_quopri.py @@ -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,20 @@ 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) +        # On Windows, Python will output the result to stdout using +        # CRLF, as the mode of stdout is text mode. To compare this +        # with the expected result, we need to do a line-by-line comparison. +        self.assert_(cout.splitlines() == e.splitlines())      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.splitlines() == p.splitlines())  def test_main():      test_support.run_unittest(QuopriTestCase)  | 
