diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-04-19 03:21:23 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-04-19 03:21:23 +0000 |
commit | ec0bd633e274544391d5f7899d0bfd5b7c63f872 (patch) | |
tree | 41eaba74cc15dcbdf6d9d5789fd570ee4d7cb99e /test | |
parent | c1903a9f17ebda5c7c6d94e634d90e7ee0f98a72 (diff) | |
download | ruby-ec0bd633e274544391d5f7899d0bfd5b7c63f872.tar.gz |
Run TC_JSONGenerate#test_gc in a separate process.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rwxr-xr-x | test/json/test_json_generate.rb | 31 |
1 files changed, 11 insertions, 20 deletions
diff --git a/test/json/test_json_generate.rb b/test/json/test_json_generate.rb index ed38e5dffa..8d06cec10e 100755 --- a/test/json/test_json_generate.rb +++ b/test/json/test_json_generate.rb @@ -215,26 +215,17 @@ EOT end def test_gc - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - bignum_too_long_to_embed_as_string = 1234567890123456789012345 - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - expect = bignum_too_long_to_embed_as_string.to_s - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - GC.start - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - stress, GC.stress = GC.stress, true - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - - 10.times do |i| - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - tmp = bignum_too_long_to_embed_as_string.to_json - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - assert_equal expect, tmp - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - end - $stdout.puts 'debug: %s:%d:' % [__FILE__, __LINE__] - ensure - GC.stress = stress + require_relative '../ruby/envutil.rb' + 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 + raise "'\#{expect}' is expected, but '\#{tmp}'" unless tmp == expect + end + EOS end if GC.respond_to?(:stress=) if defined?(JSON::Ext::Generator) |