Skip to content

Commit 89321c6

Browse files
committed
Change TestM17N#test_object_inspect_external to use EnvUtil.with_default_external
1 parent f3d95fa commit 89321c6

File tree

1 file changed

+18
-25
lines changed

1 file changed

+18
-25
lines changed

test/ruby/test_m17n.rb

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -258,40 +258,33 @@ def test_object_utf16_32_inspect
258258
end
259259

260260
def test_object_inspect_external
261-
orig_v, $VERBOSE = $VERBOSE, false
262-
orig_int, Encoding.default_internal = Encoding.default_internal, nil
263-
orig_ext = Encoding.default_external
264-
265261
omit "https://bugs.ruby-lang.org/issues/18338"
266262

267263
o = Object.new
268264

269-
Encoding.default_external = Encoding::UTF_16BE
270-
def o.inspect
271-
"abc"
272-
end
273-
assert_nothing_raised(Encoding::CompatibilityError) { [o].inspect }
265+
EnvUtil.with_default_external(Encoding::UTF_16BE) do
266+
def o.inspect
267+
"abc"
268+
end
269+
assert_nothing_raised(Encoding::CompatibilityError) { [o].inspect }
274270

275-
def o.inspect
276-
"abc".encode(Encoding.default_external)
271+
def o.inspect
272+
"abc".encode(Encoding.default_external)
273+
end
274+
assert_equal '[abc]', [o].inspect
277275
end
278276

279-
assert_equal '[abc]', [o].inspect
280-
281-
Encoding.default_external = Encoding::US_ASCII
282-
def o.inspect
283-
"\u3042"
284-
end
285-
assert_equal '[\u3042]', [o].inspect
277+
EnvUtil.with_default_external(Encoding::US_ASCII) do
278+
def o.inspect
279+
"\u3042"
280+
end
281+
assert_equal '[\u3042]', [o].inspect
286282

287-
def o.inspect
288-
"\x82\xa0".force_encoding(Encoding::Windows_31J)
283+
def o.inspect
284+
"\x82\xa0".force_encoding(Encoding::Windows_31J)
285+
end
286+
assert_equal '[\x{82A0}]', [o].inspect
289287
end
290-
assert_equal '[\x{82A0}]', [o].inspect
291-
ensure
292-
Encoding.default_internal = orig_int
293-
Encoding.default_external = orig_ext
294-
$VERBOSE = orig_v
295288
end
296289

297290
def test_str_dump

0 commit comments

Comments
 (0)