diff options
Diffstat (limited to 'tests/test_json_generate.rb')
-rwxr-xr-x | tests/test_json_generate.rb | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/tests/test_json_generate.rb b/tests/test_json_generate.rb index 117a155..ea6a9a3 100755 --- a/tests/test_json_generate.rb +++ b/tests/test_json_generate.rb @@ -215,16 +215,18 @@ EOT end def test_gc - bignum_too_long_to_embed_as_string = 1234567890123456789012345 - expect = bignum_too_long_to_embed_as_string.to_s - stress, GC.stress = GC.stress, true + if respond_to?(:assert_in_out_err) + assert_in_out_err(%w[-rjson --disable-gems], <<-EOS, [], []) + bignum_too_long_to_embed_as_string = 1234567890123456789012345 + expect = bignum_too_long_to_embed_as_string.to_s + GC.stress = true - 10.times do |i| - tmp = bignum_too_long_to_embed_as_string.to_json - assert_equal expect, tmp + 10.times do |i| + tmp = bignum_too_long_to_embed_as_string.to_json + raise "'\#{expect}' is expected, but '\#{tmp}'" unless tmp == expect + end + EOS end - ensure - GC.stress = stress end if GC.respond_to?(:stress=) def test_configure_using_configure_and_merge |