diff -r 13ad4a34fa87 Lib/test/test_base64.py --- a/Lib/test/test_base64.py Mon May 18 13:21:21 2015 -0700 +++ b/Lib/test/test_base64.py Sun May 24 13:15:59 2015 -0700 @@ -3,10 +3,8 @@ import base64 import binascii import os -import sys -import subprocess -import struct from array import array +from test.support import script_helper class LegacyBase64TestCase(unittest.TestCase): @@ -622,19 +620,14 @@ self.assertTrue(issubclass(binascii.Error, ValueError)) - class TestMain(unittest.TestCase): def tearDown(self): if os.path.exists(support.TESTFN): os.unlink(support.TESTFN) - def get_output(self, *args, **options): - args = (sys.executable, '-m', 'base64') + args - return subprocess.check_output(args, **options) - def test_encode_decode(self): - output = self.get_output('-t') - self.assertSequenceEqual(output.splitlines(), ( + result = script_helper.assert_python_ok('-m', 'base64', '-t') + self.assertSequenceEqual(result.out.splitlines(), ( b"b'Aladdin:open sesame'", br"b'QWxhZGRpbjpvcGVuIHNlc2FtZQ==\n'", b"b'Aladdin:open sesame'", @@ -643,20 +636,21 @@ def test_encode_file(self): with open(support.TESTFN, 'wb') as fp: fp.write(b'a\xffb\n') + result = script_helper.assert_python_ok('-m', 'base64', '-e', support.TESTFN) + self.assertEqual(result.out.rstrip(), b'Yf9iCg==') - output = self.get_output('-e', support.TESTFN) - self.assertEqual(output.rstrip(), b'Yf9iCg==') - - with open(support.TESTFN, 'rb') as fp: - output = self.get_output('-e', stdin=fp) - self.assertEqual(output.rstrip(), b'Yf9iCg==') + def test_encode_from_stdin(self): + input = b'a\xffb\n' + p = script_helper.run_python('-m', 'base64', '-e') + p.stdin.write(input) + result = script_helper.wait_for_process(p) + self.assertEqual(result.out.rstrip(), b'Yf9iCg==') def test_decode(self): with open(support.TESTFN, 'wb') as fp: fp.write(b'Yf9iCg==') - output = self.get_output('-d', support.TESTFN) - self.assertEqual(output.rstrip(), b'a\xffb') - + result = script_helper.assert_python_ok('-m', 'base64', '-d', support.TESTFN) + self.assertEqual(result.out.rstrip(), b'a\xffb') def test_main():