diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-11-20 02:55:08 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-11-20 02:55:08 +0000 |
commit | 14cab32596d3e394cafea7a7698a81034b83c172 (patch) | |
tree | 672a0450700e77f4d0129f781ce24c1799a773fa /test/json/test_json_generic_object.rb | |
parent | 9d740ddebeaa46f47c9b4529e8b36d72d97f9105 (diff) | |
download | ruby-14cab32596d3e394cafea7a7698a81034b83c172.tar.gz |
* ext/json: merge JSON 1.8.1.
https://github.com/nurse/json/compare/002ac2771ce32776b32ccd2d06e5604de6c36dcd...e09ffc0d7da25d0393873936c118c188c78dbac3
* Remove Rubinius exception since transcoding should be working now.
* Fix https://github.com/flori/json/issues/162 reported by Marc-Andre
Lafortune <github_rocks@marc-andre.ca>. Thanks!
* Applied patches by Yui NARUSE <naruse@airemix.jp> to suppress
warning with -Wchar-subscripts and better validate UTF-8 strings.
* Applied patch by ginriki@github to remove unnecessary if.
* Add load/dump interface to JSON::GenericObject to make
serialize :some_attribute, JSON::GenericObject
work in Rails active models for convenient
SomeModel#some_attribute.foo.bar access to serialised JSON data.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/json/test_json_generic_object.rb')
-rw-r--r-- | test/json/test_json_generic_object.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/test/json/test_json_generic_object.rb b/test/json/test_json_generic_object.rb index 77ef22e6ae..c43c7762be 100644 --- a/test/json/test_json_generic_object.rb +++ b/test/json/test_json_generic_object.rb @@ -49,6 +49,21 @@ class TestJSONGenericObject < Test::Unit::TestCase assert_equal true, GenericObject.from_hash(true) end + def test_json_generic_object_load + empty = JSON::GenericObject.load(nil) + assert_kind_of JSON::GenericObject, empty + simple_json = '{"json_class":"JSON::GenericObject","hello":"world"}' + simple = JSON::GenericObject.load(simple_json) + assert_kind_of JSON::GenericObject, simple + assert_equal "world", simple.hello + converting = JSON::GenericObject.load('{ "hello": "world" }') + assert_kind_of JSON::GenericObject, converting + assert_equal "world", converting.hello + + json = JSON::GenericObject.dump(JSON::GenericObject[:hello => 'world']) + assert_equal JSON(json), JSON('{"json_class":"JSON::GenericObject","hello":"world"}') + end + private def switch_json_creatable |