diff options
author | Jason R. Clark <jclark@newrelic.com> | 2014-09-19 15:43:45 -0700 |
---|---|---|
committer | Jason R. Clark <jclark@newrelic.com> | 2014-09-19 15:43:47 -0700 |
commit | 98780de119d7857f0b83fa61123fd7d768414abb (patch) | |
tree | f9f90b6402cc2b7e4505aab806a73f3fc09ec7fb /tests | |
parent | 5a4331918f61a8a4dbe12df8a12f66e5b4e4811a (diff) | |
download | json-98780de119d7857f0b83fa61123fd7d768414abb.tar.gz |
Don't mutate JSON.dump_default_options from dump
The use of Hash#update from the JSON.dump method was mutating the
dump_default_options hash on any call to dump with a limit provided. An
individual method call with an overriding value shouldn't update the
defaults in this way.
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/test_json.rb | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tests/test_json.rb b/tests/test_json.rb index 6af6b32..f4e6696 100755 --- a/tests/test_json.rb +++ b/tests/test_json.rb @@ -515,6 +515,12 @@ EOT assert_equal too_deep, output.string end + def test_dump_should_modify_defaults + max_nesting = JSON.dump_default_options[:max_nesting] + JSON.dump([], StringIO.new, 10) + assert_equal max_nesting, JSON.dump_default_options[:max_nesting] + end + def test_big_integers json1 = JSON([orig = (1 << 31) - 1]) assert_equal orig, JSON[json1][0] |