@@ -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