@@ -1052,19 +1052,24 @@ def test_scan_integer_base_16
10521052 assert_predicate ( s , :matched? )
10531053
10541054 s = create_string_scanner ( '0x' )
1055- assert_nil ( s . scan_integer ( base : 16 ) )
1056- assert_equal ( 0 , s . pos )
1057- refute_predicate ( s , :matched? )
1055+ assert_equal ( 0 , s . scan_integer ( base : 16 ) )
1056+ assert_equal ( 1 , s . pos )
1057+ assert_predicate ( s , :matched? )
1058+
1059+ s = create_string_scanner ( '0xyz' )
1060+ assert_equal ( 0 , s . scan_integer ( base : 16 ) )
1061+ assert_equal ( 1 , s . pos )
1062+ assert_predicate ( s , :matched? )
10581063
10591064 s = create_string_scanner ( '-0x' )
1060- assert_nil ( s . scan_integer ( base : 16 ) )
1061- assert_equal ( 0 , s . pos )
1062- refute_predicate ( s , :matched? )
1065+ assert_equal ( 0 , s . scan_integer ( base : 16 ) )
1066+ assert_equal ( 2 , s . pos )
1067+ assert_predicate ( s , :matched? )
10631068
10641069 s = create_string_scanner ( '+0x' )
1065- assert_nil ( s . scan_integer ( base : 16 ) )
1066- assert_equal ( 0 , s . pos )
1067- refute_predicate ( s , :matched? )
1070+ assert_equal ( 0 , s . scan_integer ( base : 16 ) )
1071+ assert_equal ( 2 , s . pos )
1072+ assert_predicate ( s , :matched? )
10681073
10691074 s = create_string_scanner ( '-123abc' )
10701075 assert_equal ( -0x123abc , s . scan_integer ( base : 16 ) )
0 commit comments