@@ -301,13 +301,21 @@ def test_b64decode_invalid_chars(self):
301301 with self .assertRaises (binascii .Error ):
302302 base64 .b64decode (bstr .decode ('ascii' ), validate = True )
303303
304- # Normal alphabet characters are discarded when alternative given
305- self .assertEqual (base64 .b64decode (b'++//' , altchars = b'-_' ), b'' )
306- self .assertEqual (base64 .urlsafe_b64decode (b'++//' ), b'' )
304+ # Normal alphabet characters will be discarded when alternative given
305+ with self .assertWarns (FutureWarning ):
306+ self .assertEqual (base64 .b64decode (b'++++' , altchars = b'-_' ),
307+ b'\xfb \xef \xbe ' )
308+ with self .assertWarns (FutureWarning ):
309+ self .assertEqual (base64 .b64decode (b'////' , altchars = b'-_' ),
310+ b'\xff \xff \xff ' )
311+ self .assertEqual (base64 .urlsafe_b64decode (b'++++' ), b'' )
312+ self .assertEqual (base64 .urlsafe_b64decode (b'////' ), b'' )
307313 with self .assertRaises (binascii .Error ):
308314 base64 .b64decode (b'++++' , altchars = b'-_' , validate = True )
309315 with self .assertRaises (binascii .Error ):
310316 base64 .b64decode (b'////' , altchars = b'-_' , validate = True )
317+ with self .assertRaises (binascii .Error ):
318+ base64 .b64decode (b'+/!' , altchars = b'-_' )
311319
312320 def _altchars_strategy ():
313321 """Generate 'altchars' for base64 encoding."""
0 commit comments