diff options
author | Florian Frank <flori@ping.de> | 2015-01-08 22:35:49 +0100 |
---|---|---|
committer | Florian Frank <flori@ping.de> | 2015-01-08 22:35:49 +0100 |
commit | 83c243437fdd080639175ff35ea348b9b0b05781 (patch) | |
tree | 425f2f6ade9bdaa036a54a6eccd040d510a9ea3a | |
parent | 302c96471afb002c3418bc7a31141ff783a50e95 (diff) | |
parent | 41fee9f1453b57e6f0cd46d16e07e329c16cd17c (diff) | |
download | json-83c243437fdd080639175ff35ea348b9b0b05781.tar.gz |
Merge branch 'master' of github.com:flori/json
-rw-r--r-- | .travis.yml | 9 | ||||
-rw-r--r-- | ext/json/ext/generator/generator.c | 1 | ||||
-rwxr-xr-x | tests/test_json_generate.rb | 13 |
3 files changed, 19 insertions, 4 deletions
diff --git a/.travis.yml b/.travis.yml index c0d1d34..f1795f7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,6 @@ # Passes arguments to bundle install (http://gembundler.com/man/bundle-install.1.html) #bundler_args: --binstubs +language: ruby # Specify which ruby versions you wish to run your tests on, each version will be used rvm: @@ -10,14 +11,14 @@ rvm: - 2.1 - 2.2 - ree - - rbx-18mode - - rbx-19mode + - rbx-2 - jruby-18mode - jruby-19mode - ruby-head matrix: allow_failures: - - rvm: rbx-18mode - - rvm: rbx-19mode + - rvm: rbx-2 - rvm: ruby-head script: "bundle exec rake" + +sudo: false diff --git a/ext/json/ext/generator/generator.c b/ext/json/ext/generator/generator.c index a474fbb..592b95a 100644 --- a/ext/json/ext/generator/generator.c +++ b/ext/json/ext/generator/generator.c @@ -898,6 +898,7 @@ static FBuffer *cState_prepare_buffer(VALUE self) } else { state->object_delim2 = fbuffer_alloc(16); } + if (state->space_before) fbuffer_append(state->object_delim2, state->space_before, state->space_before_len); fbuffer_append_char(state->object_delim2, ':'); if (state->space) fbuffer_append(state->object_delim2, state->space, state->space_len); diff --git a/tests/test_json_generate.rb b/tests/test_json_generate.rb index ea6a9a3..8db0b78 100755 --- a/tests/test_json_generate.rb +++ b/tests/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 => "<i>", :object_nl => "\n", :array_nl => "<a_nl>") + json = generate({1=>{2=>3,4=>[5,6]}}, state) + assert_equal(<<'EOT'.chomp, json) +{ +<i>"1" : { +<i><i>"2" : 3, +<i><i>"4" : [<a_nl><i><i><i>5,<a_nl><i><i><i>6<a_nl><i><i>] +<i>} +} +EOT + end + def test_fast_generate json = fast_generate(@hash) assert_equal(JSON.parse(@json2), JSON.parse(json)) |