summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/ruby/test_marshal.rb6
-rw-r--r--test/ruby/test_struct.rb7
2 files changed, 13 insertions, 0 deletions
diff --git a/test/ruby/test_marshal.rb b/test/ruby/test_marshal.rb
index 4a9192d44..172bfbb3f 100644
--- a/test/ruby/test_marshal.rb
+++ b/test/ruby/test_marshal.rb
@@ -198,4 +198,10 @@ class TestMarshal < Test::Unit::TestCase
assert_equal(sym, Marshal.load(Marshal.dump(sym)), '[ruby-core:24788]')
end
end
+
+ ClassUTF8 = eval("class R\u{e9}sum\u{e9}; self; end")
+ def test_class_nonascii
+ a = ClassUTF8.new
+ assert_instance_of(ClassUTF8, Marshal.load(Marshal.dump(a)), '[ruby-core:24790]')
+ end
end
diff --git a/test/ruby/test_struct.rb b/test/ruby/test_struct.rb
index 6c0e1f4fb..1b68429d0 100644
--- a/test/ruby/test_struct.rb
+++ b/test/ruby/test_struct.rb
@@ -212,4 +212,11 @@ class TestStruct < Test::Unit::TestCase
Struct.new(0)
}
end
+
+ def test_nonascii
+ struct_test = Struct.new("R\u{e9}sum\u{e9}", :"r\u{e9}sum\u{e9}")
+ assert_equal(Struct.const_get("R\u{e9}sum\u{e9}"), struct_test, '[ruby-core:24849]')
+ a = struct_test.new(42)
+ assert_equal("#<struct Struct::R\u{e9}sum\u{e9} r\u{e9}sum\u{e9}=42>", a.inspect, '[ruby-core:24849]')
+ end
end