summaryrefslogtreecommitdiff
path: root/test/psych/test_encoding.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/psych/test_encoding.rb')
-rw-r--r--test/psych/test_encoding.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/psych/test_encoding.rb b/test/psych/test_encoding.rb
index 029ff75ed9..a341c47859 100644
--- a/test/psych/test_encoding.rb
+++ b/test/psych/test_encoding.rb
@@ -40,6 +40,22 @@ module Psych
assert_match(/alias value/, e.message)
end
+ def test_to_yaml_is_valid
+ ext_before = Encoding.default_external
+ int_before = Encoding.default_internal
+
+ Encoding.default_external = Encoding::US_ASCII
+ Encoding.default_internal = nil
+
+ s = "こんにちは!"
+ # If no encoding is specified, use UTF-8
+ assert_equal Encoding::UTF_8, Psych.dump(s).encoding
+ assert_equal s, Psych.load(Psych.dump(s))
+ ensure
+ Encoding.default_external = ext_before
+ Encoding.default_internal = int_before
+ end
+
def test_start_mapping
foo = 'foo'
bar = 'バー'