@@ -315,6 +315,20 @@ def items(self):
315315 self .assertRaises (TypeError , _testcapi .get_mapping_values , bad_mapping )
316316 self .assertRaises (TypeError , _testcapi .get_mapping_items , bad_mapping )
317317
318+ def test_pynumber_tobase (self ):
319+ from _testcapi import pynumber_tobase
320+ self .assertEqual (pynumber_tobase (123 , 2 ), '0b1111011' )
321+ self .assertEqual (pynumber_tobase (123 , 8 ), '0o173' )
322+ self .assertEqual (pynumber_tobase (123 , 10 ), '123' )
323+ self .assertEqual (pynumber_tobase (123 , 16 ), '0x7b' )
324+ self .assertEqual (pynumber_tobase (- 123 , 2 ), '-0b1111011' )
325+ self .assertEqual (pynumber_tobase (- 123 , 8 ), '-0o173' )
326+ self .assertEqual (pynumber_tobase (- 123 , 10 ), '-123' )
327+ self .assertEqual (pynumber_tobase (- 123 , 16 ), '-0x7b' )
328+ self .assertRaises (TypeError , pynumber_tobase , 123.0 , 10 )
329+ self .assertRaises (TypeError , pynumber_tobase , '123' , 10 )
330+ self .assertRaises (SystemError , pynumber_tobase , 123 , 0 )
331+
318332
319333class TestPendingCalls (unittest .TestCase ):
320334
0 commit comments