mirror of
https://github.com/python/cpython.git
synced 2024-11-27 03:45:08 +08:00
Added Mitchell Surface's regression tests for base64. Closes patch #550002.
This commit is contained in:
parent
18ca791028
commit
2ae87539aa
59
Lib/test/test_base64.py
Normal file
59
Lib/test/test_base64.py
Normal file
@ -0,0 +1,59 @@
|
||||
import unittest
|
||||
import test_support
|
||||
import base64
|
||||
from binascii import Error as binascii_error
|
||||
|
||||
class Base64TestCase(unittest.TestCase):
|
||||
def test_encode_string(self):
|
||||
"""Testing encode string"""
|
||||
test_support.verify(base64.encodestring("www.python.org") ==
|
||||
"d3d3LnB5dGhvbi5vcmc=\n",
|
||||
reason="www.python.org encodestring failed")
|
||||
test_support.verify(base64.encodestring("a") ==
|
||||
"YQ==\n",
|
||||
reason="a encodestring failed")
|
||||
test_support.verify(base64.encodestring("ab") ==
|
||||
"YWI=\n",
|
||||
reason="ab encodestring failed")
|
||||
test_support.verify(base64.encodestring("abc") ==
|
||||
"YWJj\n",
|
||||
reason="abc encodestring failed")
|
||||
test_support.verify(base64.encodestring("") ==
|
||||
"",
|
||||
reason="null encodestring failed")
|
||||
test_support.verify(base64.encodestring(
|
||||
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#0^&*();:<>,. []{}") ==
|
||||
"YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0\nNTY3ODkhQCMwXiYqKCk7Ojw+LC4gW117fQ==\n",
|
||||
reason = "long encodestring failed")
|
||||
|
||||
def test_decode_string(self):
|
||||
"""Testing decode string"""
|
||||
test_support.verify(base64.decodestring("d3d3LnB5dGhvbi5vcmc=\n") ==
|
||||
"www.python.org",
|
||||
reason="www.python.org decodestring failed")
|
||||
test_support.verify(base64.decodestring("YQ==\n") ==
|
||||
"a",
|
||||
reason="a decodestring failed")
|
||||
test_support.verify(base64.decodestring("YWI=\n") ==
|
||||
"ab",
|
||||
reason="ab decodestring failed")
|
||||
test_support.verify(base64.decodestring("YWJj\n") ==
|
||||
"abc",
|
||||
reason="abc decodestring failed")
|
||||
test_support.verify(base64.decodestring(
|
||||
"YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0\nNTY3ODkhQCMwXiYqKCk7Ojw+LC4gW117fQ==\n") ==
|
||||
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#0^&*();:<>,. []{}",
|
||||
reason = "long decodestring failed")
|
||||
try:
|
||||
base64.decodestring("")
|
||||
except binascii_error:
|
||||
pass
|
||||
else:
|
||||
self.fail("expected a binascii.Error on null decode request")
|
||||
|
||||
def test_main():
|
||||
test_support.run_unittest(Base64TestCase)
|
||||
|
||||
if __name__ == "__main__":
|
||||
test_main()
|
||||
|
Loading…
Reference in New Issue
Block a user