|
|
|
@ -3,10 +3,8 @@ from test import support |
|
|
|
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,15 +620,13 @@ class BaseXYTestCase(unittest.TestCase): |
|
|
|
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 get_output(self, *args): |
|
|
|
return script_helper.assert_python_ok('-m', 'base64', *args).out |
|
|
|
|
|
|
|
def test_encode_decode(self): |
|
|
|
output = self.get_output('-t') |
|
|
|
@ -643,13 +639,14 @@ class TestMain(unittest.TestCase): |
|
|
|
def test_encode_file(self): |
|
|
|
with open(support.TESTFN, 'wb') as fp: |
|
|
|
fp.write(b'a\xffb\n') |
|
|
|
|
|
|
|
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): |
|
|
|
with script_helper.spawn_python('-m', 'base64', '-e') as proc: |
|
|
|
out, err = proc.communicate(b'a\xffb\n') |
|
|
|
self.assertEqual(out.rstrip(), b'Yf9iCg==') |
|
|
|
self.assertIsNone(err) |
|
|
|
|
|
|
|
def test_decode(self): |
|
|
|
with open(support.TESTFN, 'wb') as fp: |
|
|
|
@ -657,10 +654,5 @@ class TestMain(unittest.TestCase): |
|
|
|
output = self.get_output('-d', support.TESTFN) |
|
|
|
self.assertEqual(output.rstrip(), b'a\xffb') |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_main(): |
|
|
|
support.run_unittest(__name__) |
|
|
|
|
|
|
|
if __name__ == '__main__': |
|
|
|
test_main() |
|
|
|
unittest.main() |