@@ -149,6 +149,8 @@ def test_basic(self):
149
149
self .assertEqual (int (' 0O123 ' , 0 ), 83 )
150
150
self .assertEqual (int (' 0X123 ' , 0 ), 291 )
151
151
self .assertEqual (int (' 0B100 ' , 0 ), 4 )
152
+ with self .assertRaises (ValueError ):
153
+ int ('010' , 0 )
152
154
153
155
# without base still base 10
154
156
self .assertEqual (int ('0123' ), 123 )
@@ -215,6 +217,24 @@ def test_basic(self):
215
217
self .assertEqual (int ('2br45qc' , 35 ), 4294967297 )
216
218
self .assertEqual (int ('1z141z5' , 36 ), 4294967297 )
217
219
220
+ def test_invalid_signs (self ):
221
+ with self .assertRaises (ValueError ):
222
+ int ('+' )
223
+ with self .assertRaises (ValueError ):
224
+ int ('-' )
225
+ with self .assertRaises (ValueError ):
226
+ int ('- 1' )
227
+ with self .assertRaises (ValueError ):
228
+ int ('+ 1' )
229
+ with self .assertRaises (ValueError ):
230
+ int (' + 1 ' )
231
+
232
+ def test_unicode (self ):
233
+ self .assertEqual (int ("१२३४५६७८९०1234567890" ), 12345678901234567890 )
234
+ self .assertEqual (int ('١٢٣٤٥٦٧٨٩٠' ), 1234567890 )
235
+ self .assertEqual (int ("१२३४५६७८९०1234567890" , 0 ), 12345678901234567890 )
236
+ self .assertEqual (int ('١٢٣٤٥٦٧٨٩٠' , 0 ), 1234567890 )
237
+
218
238
def test_underscores (self ):
219
239
for lit in VALID_UNDERSCORE_LITERALS :
220
240
if any (ch in lit for ch in '.eEjJ' ):
0 commit comments