summaryrefslogtreecommitdiffstatshomepage
path: root/tests/extmod/ubinascii_a2b_base64.py
diff options
context:
space:
mode:
authorAlex Robbins <alexdotrobbins@gmail.com>2017-08-04 17:30:34 -0500
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2017-08-17 09:25:51 +0300
commitc89254fd0f7f4517163e095f144bfe154f47758a (patch)
treeac2028090bd68d37d03d755ec8e097cbc0fd3ccf /tests/extmod/ubinascii_a2b_base64.py
parent025e5f2b339377ebc54ebc9cab2612946145a6fa (diff)
downloadmicropython-c89254fd0f7f4517163e095f144bfe154f47758a.tar.gz
micropython-c89254fd0f7f4517163e095f144bfe154f47758a.zip
extmod/modubinascii: Rewrite mod_binascii_a2b_base64.
This implementation ignores invalid characters in the input. This allows it to decode the output of b2a_base64, and also mimics the behavior of CPython.
Diffstat (limited to 'tests/extmod/ubinascii_a2b_base64.py')
-rw-r--r--tests/extmod/ubinascii_a2b_base64.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/tests/extmod/ubinascii_a2b_base64.py b/tests/extmod/ubinascii_a2b_base64.py
index b35f265910..05a3169f3a 100644
--- a/tests/extmod/ubinascii_a2b_base64.py
+++ b/tests/extmod/ubinascii_a2b_base64.py
@@ -21,6 +21,13 @@ print(binascii.a2b_base64(b'f4D/'))
print(binascii.a2b_base64(b'f4D+')) # convert '+'
print(binascii.a2b_base64(b'MTIzNEFCQ0RhYmNk'))
+# Ignore invalid characters and pad sequences
+print(binascii.a2b_base64(b'Zm9v\n'))
+print(binascii.a2b_base64(b'Zm\x009v\n'))
+print(binascii.a2b_base64(b'Zm9v=='))
+print(binascii.a2b_base64(b'Zm9v==='))
+print(binascii.a2b_base64(b'Zm9v===YmFy'))
+
try:
print(binascii.a2b_base64(b'abc'))
except ValueError: