diff options
| author | Étienne Barrié <etienne.barrie@gmail.com> | 2025-11-24 15:40:06 +0100 |
|---|---|---|
| committer | git <svn-admin@ruby-lang.org> | 2025-11-26 14:47:27 +0000 |
| commit | dd6a4ea2b9cf6f3ab1ea01e044f3d789fb6d5450 (patch) | |
| tree | 6036b8a7e2bc1eb3e92ad136b4aedeebda6c3748 | |
| parent | fb642b78cb89dd26ade620bda16ca78b570a907e (diff) | |
[ruby/json] Test depth
https://github.com/ruby/json/commit/d02e40324a
| -rwxr-xr-x | test/json/json_generator_test.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/json/json_generator_test.rb b/test/json/json_generator_test.rb index f1fb72ee29..0931668f33 100755 --- a/test/json/json_generator_test.rb +++ b/test/json/json_generator_test.rb @@ -282,6 +282,16 @@ class JSONGeneratorTest < Test::Unit::TestCase end def test_depth + pretty = { object_nl: "\n", array_nl: "\n", space: " ", indent: " " } + state = JSON.state.new(**pretty) + assert_equal %({\n "foo": 42\n}), JSON.generate({ foo: 42 }, pretty) + assert_equal %({\n "foo": 42\n}), state.generate(foo: 42) + state.depth = 1 + assert_equal %({\n "foo": 42\n }), JSON.generate({ foo: 42 }, pretty.merge(depth: 1)) + assert_equal %({\n "foo": 42\n }), state.generate(foo: 42) + end + + def test_depth_nesting_error ary = []; ary << ary assert_raise(JSON::NestingError) { generate(ary) } assert_raise(JSON::NestingError) { JSON.pretty_generate(ary) } |
