@@ -293,8 +293,136 @@ def test_surrogate_keyword(self):
293293 else :
294294 self .fail ('TypeError should have been raised' )
295295
296+ class Bytes_TestCase (unittest .TestCase ):
297+ def test_s (self ):
298+ from _testcapi import getargs_s
299+ self .assertEqual (getargs_s ('abc\xe9 ' ), b'abc\xc3 \xa9 ' )
300+ self .assertRaises (TypeError , getargs_s , 'nul:\0 ' )
301+ self .assertRaises (TypeError , getargs_s , b'bytes' )
302+ self .assertRaises (TypeError , getargs_s , bytearray (b'bytearray' ))
303+ self .assertRaises (TypeError , getargs_s , memoryview (b'memoryview' ))
304+ self .assertRaises (TypeError , getargs_s , None )
305+
306+ def test_s_star (self ):
307+ from _testcapi import getargs_s_star
308+ self .assertEqual (getargs_s_star ('abc\xe9 ' ), b'abc\xc3 \xa9 ' )
309+ self .assertEqual (getargs_s_star ('nul:\0 ' ), b'nul:\0 ' )
310+ self .assertEqual (getargs_s_star (b'bytes' ), b'bytes' )
311+ self .assertEqual (getargs_s_star (bytearray (b'bytearray' )), b'bytearray' )
312+ self .assertEqual (getargs_s_star (memoryview (b'memoryview' )), b'memoryview' )
313+ self .assertRaises (TypeError , getargs_s_star , None )
314+
315+ def test_s_hash (self ):
316+ from _testcapi import getargs_s_hash
317+ self .assertEqual (getargs_s_hash ('abc\xe9 ' ), b'abc\xc3 \xa9 ' )
318+ self .assertEqual (getargs_s_hash ('nul:\0 ' ), b'nul:\0 ' )
319+ self .assertEqual (getargs_s_hash (b'bytes' ), b'bytes' )
320+ self .assertRaises (TypeError , getargs_s_hash , bytearray (b'bytearray' ))
321+ self .assertRaises (TypeError , getargs_s_hash , memoryview (b'memoryview' ))
322+ self .assertRaises (TypeError , getargs_s_hash , None )
323+
324+ def test_z (self ):
325+ from _testcapi import getargs_z
326+ self .assertEqual (getargs_z ('abc\xe9 ' ), b'abc\xc3 \xa9 ' )
327+ self .assertRaises (TypeError , getargs_z , 'nul:\0 ' )
328+ self .assertEqual (getargs_z (b'bytes' ), b'bytes' )
329+ self .assertRaises (TypeError , getargs_z , bytearray (b'bytearray' ))
330+ self .assertRaises (TypeError , getargs_z , memoryview (b'memoryview' ))
331+ self .assertIsNone (getargs_z (None ))
332+
333+ def test_z_star (self ):
334+ from _testcapi import getargs_z_star
335+ self .assertEqual (getargs_z_star ('abc\xe9 ' ), b'abc\xc3 \xa9 ' )
336+ self .assertEqual (getargs_z_star ('nul:\0 ' ), b'nul:\0 ' )
337+ self .assertEqual (getargs_z_star (b'bytes' ), b'bytes' )
338+ self .assertEqual (getargs_z_star (bytearray (b'bytearray' )), b'bytearray' )
339+ self .assertEqual (getargs_z_star (memoryview (b'memoryview' )), b'memoryview' )
340+ self .assertIsNone (getargs_z_star (None ))
341+
342+ def test_z_hash (self ):
343+ from _testcapi import getargs_z_hash
344+ self .assertEqual (getargs_z_hash ('abc\xe9 ' ), b'abc\xc3 \xa9 ' )
345+ self .assertEqual (getargs_z_hash ('nul:\0 ' ), b'nul:\0 ' )
346+ self .assertEqual (getargs_z_hash (b'bytes' ), b'bytes' )
347+ self .assertRaises (TypeError , getargs_z_hash , bytearray (b'bytearray' ))
348+ self .assertRaises (TypeError , getargs_z_hash , memoryview (b'memoryview' ))
349+ self .assertIsNone (getargs_z_hash (None ))
350+
351+ def test_y (self ):
352+ from _testcapi import getargs_y
353+ self .assertRaises (TypeError , getargs_y , 'abc\xe9 ' )
354+ self .assertEqual (getargs_y (b'bytes' ), b'bytes' )
355+ self .assertRaises (TypeError , getargs_y , b'nul:\0 ' )
356+ self .assertRaises (TypeError , getargs_y , bytearray (b'bytearray' ))
357+ self .assertRaises (TypeError , getargs_y , memoryview (b'memoryview' ))
358+ self .assertRaises (TypeError , getargs_y , None )
359+
360+ def test_y_star (self ):
361+ from _testcapi import getargs_y_star
362+ self .assertRaises (TypeError , getargs_y_star , 'abc\xe9 ' )
363+ self .assertEqual (getargs_y_star (b'bytes' ), b'bytes' )
364+ self .assertEqual (getargs_y_star (b'nul:\0 ' ), b'nul:\0 ' )
365+ self .assertEqual (getargs_y_star (bytearray (b'bytearray' )), b'bytearray' )
366+ self .assertEqual (getargs_y_star (memoryview (b'memoryview' )), b'memoryview' )
367+ self .assertRaises (TypeError , getargs_y_star , None )
368+
369+ def test_y_hash (self ):
370+ from _testcapi import getargs_y_hash
371+ self .assertRaises (TypeError , getargs_y_hash , 'abc\xe9 ' )
372+ self .assertEqual (getargs_y_hash (b'bytes' ), b'bytes' )
373+ self .assertEqual (getargs_y_hash (b'nul:\0 ' ), b'nul:\0 ' )
374+ self .assertRaises (TypeError , getargs_y_hash , bytearray (b'bytearray' ))
375+ self .assertRaises (TypeError , getargs_y_hash , memoryview (b'memoryview' ))
376+ self .assertRaises (TypeError , getargs_y_hash , None )
377+
378+
379+ class Unicode_TestCase (unittest .TestCase ):
380+ def test_u (self ):
381+ from _testcapi import getargs_u
382+ self .assertEqual (getargs_u ('abc\xe9 ' ), 'abc\xe9 ' )
383+ self .assertRaises (TypeError , getargs_u , 'nul:\0 ' )
384+ self .assertRaises (TypeError , getargs_u , b'bytes' )
385+ self .assertRaises (TypeError , getargs_u , bytearray (b'bytearray' ))
386+ self .assertRaises (TypeError , getargs_u , memoryview (b'memoryview' ))
387+ self .assertRaises (TypeError , getargs_u , None )
388+
389+ def test_u_hash (self ):
390+ from _testcapi import getargs_u_hash
391+ self .assertEqual (getargs_u_hash ('abc\xe9 ' ), 'abc\xe9 ' )
392+ self .assertEqual (getargs_u_hash ('nul:\0 ' ), 'nul:\0 ' )
393+ self .assertRaises (TypeError , getargs_u_hash , b'bytes' )
394+ self .assertRaises (TypeError , getargs_u_hash , bytearray (b'bytearray' ))
395+ self .assertRaises (TypeError , getargs_u_hash , memoryview (b'memoryview' ))
396+ self .assertRaises (TypeError , getargs_u_hash , None )
397+
398+ def test_Z (self ):
399+ from _testcapi import getargs_Z
400+ self .assertEqual (getargs_Z ('abc\xe9 ' ), 'abc\xe9 ' )
401+ self .assertRaises (TypeError , getargs_Z , 'nul:\0 ' )
402+ self .assertRaises (TypeError , getargs_Z , b'bytes' )
403+ self .assertRaises (TypeError , getargs_Z , bytearray (b'bytearray' ))
404+ self .assertRaises (TypeError , getargs_Z , memoryview (b'memoryview' ))
405+ self .assertIsNone (getargs_Z (None ))
406+
407+ def test_Z_hash (self ):
408+ from _testcapi import getargs_Z_hash
409+ self .assertEqual (getargs_Z_hash ('abc\xe9 ' ), 'abc\xe9 ' )
410+ self .assertEqual (getargs_Z_hash ('nul:\0 ' ), 'nul:\0 ' )
411+ self .assertRaises (TypeError , getargs_Z_hash , b'bytes' )
412+ self .assertRaises (TypeError , getargs_Z_hash , bytearray (b'bytearray' ))
413+ self .assertRaises (TypeError , getargs_Z_hash , memoryview (b'memoryview' ))
414+ self .assertIsNone (getargs_Z_hash (None ))
415+
416+
296417def test_main ():
297- tests = [Signed_TestCase , Unsigned_TestCase , Tuple_TestCase , Keywords_TestCase ]
418+ tests = [
419+ Signed_TestCase ,
420+ Unsigned_TestCase ,
421+ Tuple_TestCase ,
422+ Keywords_TestCase ,
423+ Bytes_TestCase ,
424+ Unicode_TestCase ,
425+ ]
298426 try :
299427 from _testcapi import getargs_L , getargs_K
300428 except ImportError :
0 commit comments