summaryrefslogtreecommitdiff
path: root/test/psych
diff options
context:
space:
mode:
Diffstat (limited to 'test/psych')
-rw-r--r--test/psych/helper.rb30
-rw-r--r--test/psych/test_deprecated.rb2
-rw-r--r--test/psych/test_encoding.rb6
3 files changed, 33 insertions, 5 deletions
diff --git a/test/psych/helper.rb b/test/psych/helper.rb
index 0aae69971e..77ab0bb9d7 100644
--- a/test/psych/helper.rb
+++ b/test/psych/helper.rb
@@ -3,10 +3,38 @@ require 'stringio'
require 'tempfile'
require 'date'
require 'psych'
-require_relative '../ruby/envutil'
module Psych
class TestCase < MiniTest::Unit::TestCase
+ def self.suppress_warning
+ verbose, $VERBOSE = $VERBOSE, nil
+ yield
+ ensure
+ $VERBOSE = verbose
+ end
+
+ def with_default_external(enc)
+ verbose, $VERBOSE = $VERBOSE, nil
+ origenc, Encoding.default_external = Encoding.default_external, enc
+ $VERBOSE = verbose
+ yield
+ ensure
+ verbose, $VERBOSE = $VERBOSE, nil
+ Encoding.default_external = origenc
+ $VERBOSE = verbose
+ end
+
+ def with_default_internal(enc)
+ verbose, $VERBOSE = $VERBOSE, nil
+ origenc, Encoding.default_internal = Encoding.default_internal, enc
+ $VERBOSE = verbose
+ yield
+ ensure
+ verbose, $VERBOSE = $VERBOSE, nil
+ Encoding.default_internal = origenc
+ $VERBOSE = verbose
+ end
+
#
# Convert between Psych and the object to verify correct parsing and
# emitting
diff --git a/test/psych/test_deprecated.rb b/test/psych/test_deprecated.rb
index 1d853e1371..fd2d3299e3 100644
--- a/test/psych/test_deprecated.rb
+++ b/test/psych/test_deprecated.rb
@@ -147,7 +147,7 @@ module Psych
end
class YamlAs
- EnvUtil.suppress_warning do
+ TestCase.suppress_warning do
psych_yaml_as 'helloworld' # this should be yaml_as but to avoid syck
end
end
diff --git a/test/psych/test_encoding.rb b/test/psych/test_encoding.rb
index 4f26fa3c9c..e370606c77 100644
--- a/test/psych/test_encoding.rb
+++ b/test/psych/test_encoding.rb
@@ -110,8 +110,8 @@ module Psych
end
def test_to_yaml_is_valid
- EnvUtil.with_default_external(Encoding::US_ASCII) do
- EnvUtil.with_default_internal(nil) do
+ with_default_external(Encoding::US_ASCII) do
+ with_default_internal(nil) do
s = "こんにちは!"
# If no encoding is specified, use UTF-8
assert_equal Encoding::UTF_8, Psych.dump(s).encoding
@@ -182,7 +182,7 @@ module Psych
end
def test_default_internal
- EnvUtil.with_default_internal(Encoding::EUC_JP) do
+ with_default_internal(Encoding::EUC_JP) do
str = "壁に耳あり、障子に目あり"
assert_equal @utf8, str.encoding