@@ -99,8 +99,11 @@ class TestGemSafeMarshal < Gem::TestCase
99
99
define_method ( "test_safe_load_marshal Array [\" abc\" , \" abc\" ] Windows-1256" ) { assert_safe_load_marshal "\x04 \b [\a I\" \b abc\x06 :\r encoding\" \x11 Windows-1256@\x06 " , additional_methods : [ -> ( x ) { x . map ( &:encoding ) } ] }
100
100
define_method ( "test_safe_load_marshal String \" abc\" binary" ) { assert_safe_load_marshal "\x04 \b \" \b abc" , additional_methods : [ :encoding ] }
101
101
define_method ( "test_safe_load_marshal Array [\" abc\" , \" abc\" ] binary" ) { assert_safe_load_marshal "\x04 \b [\a \" \b abc@\x06 " , additional_methods : [ -> ( x ) { x . map ( &:encoding ) } ] }
102
- define_method ( "test_safe_load_marshal String \" \\ x61\\ x62\\ x63\" utf32" ) { assert_safe_load_marshal "\x04 \b I\" \b abc\x06 :\r encoding\" \v UTF-32" , additional_methods : [ :encoding ] }
103
- define_method ( "test_safe_load_marshal Array [\" \\ x61\\ x62\\ x63\" , \" \\ x61\\ x62\\ x63\" ] utf32" ) { assert_safe_load_marshal "\x04 \b [\a I\" \b abc\x06 :\r encoding\" \v UTF-32@\x06 " , additional_methods : [ -> ( x ) { x . map ( &:encoding ) } ] }
102
+ # TruffleString: UTF-32 string byte length is not a multiple of 4
103
+ # define_method("test_safe_load_marshal String \"\\x61\\x62\\x63\" utf32") { assert_safe_load_marshal "\x04\bI\"\babc\x06:\rencoding\"\vUTF-32", additional_methods: [:encoding] }
104
+ # define_method("test_safe_load_marshal Array [\"\\x61\\x62\\x63\", \"\\x61\\x62\\x63\"] utf32") { assert_safe_load_marshal "\x04\b[\aI\"\babc\x06:\rencoding\"\vUTF-32@\x06", additional_methods: [->(x) { x.map(&:encoding) }] }
105
+ define_method ( "test_safe_load_marshal String \" \\ x61\\ x62\\ x63\\ x64\" utf32" ) { assert_safe_load_marshal "\x04 \b I\" \x09 abcd\x06 :\r encoding\" \v UTF-32" , additional_methods : [ :encoding ] }
106
+ define_method ( "test_safe_load_marshal Array [\" \\ x61\\ x62\\ x63\\ x64\" , \" \\ x61\\ x62\\ x63\\ x64\" ] utf32" ) { assert_safe_load_marshal "\x04 \b [\a I\" \x09 abcd\x06 :\r encoding\" \v UTF-32@\x06 " , additional_methods : [ -> ( x ) { x . map ( &:encoding ) } ] }
104
107
define_method ( "test_safe_load_marshal String \" abc\" ivar" ) { assert_safe_load_marshal "\x04 \b I\" \b abc\a :\x06 ET:\n @typeI\" \t type\x06 ;\x00 T" , permitted_ivars : { "String" => %w[ @type E ] } }
105
108
define_method ( "test_safe_load_marshal String \" \" " ) { assert_safe_load_marshal "\x04 \b I\" \b abc\x06 :\x06 ET" }
106
109
define_method ( "test_safe_load_marshal Time 2000-12-31 20:07:59 -1152" ) { assert_safe_load_marshal "\x04 \b Iu:\t Time\r '@\x19 \x80 \x00 \x00 \xB0 \xEF \a :\v offseti\xFE Y:\t zone0" , additional_methods : [ :ctime , :to_f , :to_r , :to_i , :zone , :subsec , :instance_variables , :dst? , :to_a ] }
@@ -163,7 +166,9 @@ def test_string_with_encoding
163
166
String . new ( "abc" , encoding : "UTF-8" ) ,
164
167
String . new ( "abc" , encoding : "Windows-1256" ) ,
165
168
String . new ( "abc" , encoding : Encoding ::BINARY ) ,
166
- String . new ( "abc" , encoding : "UTF-32" ) ,
169
+ # TruffleRuby: length of UTF-16 string is not a multiple of 2
170
+ # String.new("abc", encoding: "UTF-32"),
171
+ String . new ( "abcd" , encoding : "UTF-32" ) ,
167
172
168
173
String . new ( "" , encoding : "US-ASCII" ) ,
169
174
String . new ( "" , encoding : "UTF-8" ) ,
0 commit comments