From 8f37674ffd5f4fd7ef581f4c5055b0b4f5acb763 Mon Sep 17 00:00:00 2001 From: hsbt Date: Tue, 13 Jan 2015 12:08:28 +0000 Subject: * ext/json, test/json: merge JSON HEAD(259dee6) separate imprementation of Typed_Data macro. https://github.com/flori/json/compare/v1.8.1...v1.8.2 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/json/test_json_generate.rb | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) (limited to 'test') diff --git a/test/json/test_json_generate.rb b/test/json/test_json_generate.rb index 2d4e1eea52..8db0b7890b 100755 --- a/test/json/test_json_generate.rb +++ b/test/json/test_json_generate.rb @@ -73,6 +73,19 @@ EOT assert_equal '666', pretty_generate(666, :quirks_mode => true) end + def test_generate_custom + state = State.new(:space_before => " ", :space => " ", :indent => "", :object_nl => "\n", :array_nl => "") + json = generate({1=>{2=>3,4=>[5,6]}}, state) + assert_equal(<<'EOT'.chomp, json) +{ +"1" : { +"2" : 3, +"4" : [5,6] +} +} +EOT + end + def test_fast_generate json = fast_generate(@hash) assert_equal(JSON.parse(@json2), JSON.parse(json)) @@ -215,16 +228,18 @@ EOT end def test_gc - 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 + 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 - raise "'\#{expect}' is expected, but '\#{tmp}'" unless tmp == expect - end - EOS + 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 end if GC.respond_to?(:stress=) def test_configure_using_configure_and_merge -- cgit v1.2.3