json 2.5.1-java → 2.6.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/lib/json/ext/generator.jar +0 -0
  3. data/lib/json/ext/parser.jar +0 -0
  4. data/lib/json/pure/parser.rb +1 -1
  5. data/lib/json/version.rb +1 -1
  6. data/lib/json.rb +1 -1
  7. metadata +6 -85
  8. data/tests/fixtures/fail10.json +0 -1
  9. data/tests/fixtures/fail11.json +0 -1
  10. data/tests/fixtures/fail12.json +0 -1
  11. data/tests/fixtures/fail13.json +0 -1
  12. data/tests/fixtures/fail14.json +0 -1
  13. data/tests/fixtures/fail18.json +0 -1
  14. data/tests/fixtures/fail19.json +0 -1
  15. data/tests/fixtures/fail2.json +0 -1
  16. data/tests/fixtures/fail20.json +0 -1
  17. data/tests/fixtures/fail21.json +0 -1
  18. data/tests/fixtures/fail22.json +0 -1
  19. data/tests/fixtures/fail23.json +0 -1
  20. data/tests/fixtures/fail24.json +0 -1
  21. data/tests/fixtures/fail25.json +0 -1
  22. data/tests/fixtures/fail27.json +0 -2
  23. data/tests/fixtures/fail28.json +0 -2
  24. data/tests/fixtures/fail29.json +0 -1
  25. data/tests/fixtures/fail3.json +0 -1
  26. data/tests/fixtures/fail30.json +0 -1
  27. data/tests/fixtures/fail31.json +0 -1
  28. data/tests/fixtures/fail32.json +0 -1
  29. data/tests/fixtures/fail4.json +0 -1
  30. data/tests/fixtures/fail5.json +0 -1
  31. data/tests/fixtures/fail6.json +0 -1
  32. data/tests/fixtures/fail7.json +0 -1
  33. data/tests/fixtures/fail8.json +0 -1
  34. data/tests/fixtures/fail9.json +0 -1
  35. data/tests/fixtures/obsolete_fail1.json +0 -1
  36. data/tests/fixtures/pass1.json +0 -56
  37. data/tests/fixtures/pass15.json +0 -1
  38. data/tests/fixtures/pass16.json +0 -1
  39. data/tests/fixtures/pass17.json +0 -1
  40. data/tests/fixtures/pass2.json +0 -1
  41. data/tests/fixtures/pass26.json +0 -1
  42. data/tests/fixtures/pass3.json +0 -6
  43. data/tests/json_addition_test.rb +0 -199
  44. data/tests/json_common_interface_test.rb +0 -169
  45. data/tests/json_encoding_test.rb +0 -107
  46. data/tests/json_ext_parser_test.rb +0 -15
  47. data/tests/json_fixtures_test.rb +0 -40
  48. data/tests/json_generator_test.rb +0 -399
  49. data/tests/json_generic_object_test.rb +0 -82
  50. data/tests/json_parser_test.rb +0 -497
  51. data/tests/json_string_matching_test.rb +0 -38
  52. data/tests/lib/core_assertions.rb +0 -763
  53. data/tests/lib/envutil.rb +0 -365
  54. data/tests/lib/find_executable.rb +0 -22
  55. data/tests/lib/helper.rb +0 -4
  56. data/tests/ractor_test.rb +0 -30
  57. data/tests/test_helper.rb +0 -17
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5555969c7bb4c1b2a2d167b08df13d12ac1bd2e8fc6f55061470614733b3880b
4
- data.tar.gz: e70f63d994949f88351b5e4e524c0801024b5a9e529d92dbfc3b0e766826cd6f
3
+ metadata.gz: '08d64ed0d9aa72d181203add925545e460e68ab0c9589cc50186ff2ef85211a7'
4
+ data.tar.gz: 98c567e47395cb39adb38629d5d139f77e7d5c884c96e9dee4c3e5d90ee6f842
5
5
  SHA512:
6
- metadata.gz: b86d4e95feb50e451214b6f49e69c13f5e5ffb93ec7e75901e2e92e7f8e69b3e5925ad4b0831feff77f2dfad8ceae0ab02009079ea7b5ba79170e02389b6299f
7
- data.tar.gz: 92e944ecd57b8c00e171a573bbc96d524eb3a0419f240537c2c089ee94a3585e78e766aaa66b51e4ad4e64711db6fe5dfb6ba6b46b09937f1f6d6536733402a9
6
+ metadata.gz: ffc1cd18ab2cdbce97ccb592eaf87876e1aff224de2533bbcdea16e530d22a9d02ace8b268dd16a19e4e3a358893da588e9191e1440aec20c16e6f5adff94b02
7
+ data.tar.gz: 13859869ef94c1ff854df0ca2781dffd9a0473a40f8cf3ec0457df20356329c16d4af987b74f6607a2dedf414c22ce668ea92eff12ff6386546b6c6b006d39df
Binary file
Binary file
@@ -45,7 +45,7 @@ module JSON
45
45
  /(?=\*/) # single slash before this comment's end
46
46
  )*
47
47
  \*/ # the End of this comment
48
- |[ \t\r\n]+ # whitespaces: space, horicontal tab, lf, cr
48
+ |[ \t\r\n]+ # whitespaces: space, horizontal tab, lf, cr
49
49
  )+
50
50
  )mx
51
51
 
data/lib/json/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: false
2
2
  module JSON
3
3
  # JSON version
4
- VERSION = '2.5.1'
4
+ VERSION = '2.6.0'
5
5
  VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
6
6
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
7
7
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
data/lib/json.rb CHANGED
@@ -493,7 +493,7 @@ require 'json/common'
493
493
  # json = JSON.generate(ruby0) # {"json_class":"Customer","v":["Dave","123 Main"]}
494
494
  # ruby1 = JSON.parse(json, create_additions: true) # #<struct Customer name="Dave", address="123 Main">
495
495
  # ruby1.class # Customer
496
- #
496
+ #
497
497
  # \Symbol:
498
498
  # require 'json/add/symbol'
499
499
  # ruby0 = :foo # foo
metadata CHANGED
@@ -1,43 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.1
4
+ version: 2.6.0
5
5
  platform: java
6
6
  authors:
7
7
  - Daniel Luz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-22 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- requirement: !ruby/object:Gem::Requirement
15
- requirements:
16
- - - ">="
17
- - !ruby/object:Gem::Version
18
- version: '0'
19
- name: rake
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- requirement: !ruby/object:Gem::Requirement
29
- requirements:
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: '0'
33
- name: test-unit
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
11
+ date: 2021-10-14 00:00:00.000000000 Z
12
+ dependencies: []
41
13
  description: A JSON implementation as a JRuby extension.
42
14
  email: dev+ruby@mernen.com
43
15
  executables: []
@@ -69,56 +41,6 @@ files:
69
41
  - lib/json/pure/generator.rb
70
42
  - lib/json/pure/parser.rb
71
43
  - lib/json/version.rb
72
- - tests/fixtures/fail10.json
73
- - tests/fixtures/fail11.json
74
- - tests/fixtures/fail12.json
75
- - tests/fixtures/fail13.json
76
- - tests/fixtures/fail14.json
77
- - tests/fixtures/fail18.json
78
- - tests/fixtures/fail19.json
79
- - tests/fixtures/fail2.json
80
- - tests/fixtures/fail20.json
81
- - tests/fixtures/fail21.json
82
- - tests/fixtures/fail22.json
83
- - tests/fixtures/fail23.json
84
- - tests/fixtures/fail24.json
85
- - tests/fixtures/fail25.json
86
- - tests/fixtures/fail27.json
87
- - tests/fixtures/fail28.json
88
- - tests/fixtures/fail29.json
89
- - tests/fixtures/fail3.json
90
- - tests/fixtures/fail30.json
91
- - tests/fixtures/fail31.json
92
- - tests/fixtures/fail32.json
93
- - tests/fixtures/fail4.json
94
- - tests/fixtures/fail5.json
95
- - tests/fixtures/fail6.json
96
- - tests/fixtures/fail7.json
97
- - tests/fixtures/fail8.json
98
- - tests/fixtures/fail9.json
99
- - tests/fixtures/obsolete_fail1.json
100
- - tests/fixtures/pass1.json
101
- - tests/fixtures/pass15.json
102
- - tests/fixtures/pass16.json
103
- - tests/fixtures/pass17.json
104
- - tests/fixtures/pass2.json
105
- - tests/fixtures/pass26.json
106
- - tests/fixtures/pass3.json
107
- - tests/json_addition_test.rb
108
- - tests/json_common_interface_test.rb
109
- - tests/json_encoding_test.rb
110
- - tests/json_ext_parser_test.rb
111
- - tests/json_fixtures_test.rb
112
- - tests/json_generator_test.rb
113
- - tests/json_generic_object_test.rb
114
- - tests/json_parser_test.rb
115
- - tests/json_string_matching_test.rb
116
- - tests/lib/core_assertions.rb
117
- - tests/lib/envutil.rb
118
- - tests/lib/find_executable.rb
119
- - tests/lib/helper.rb
120
- - tests/ractor_test.rb
121
- - tests/test_helper.rb
122
44
  homepage: http://flori.github.com/json
123
45
  licenses:
124
46
  - Ruby
@@ -137,16 +59,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
137
59
  requirements:
138
60
  - - ">="
139
61
  - !ruby/object:Gem::Version
140
- version: '2.0'
62
+ version: '2.3'
141
63
  required_rubygems_version: !ruby/object:Gem::Requirement
142
64
  requirements:
143
65
  - - ">="
144
66
  - !ruby/object:Gem::Version
145
67
  version: '0'
146
68
  requirements: []
147
- rubygems_version: 3.0.6
69
+ rubygems_version: 3.2.29
148
70
  signing_key:
149
71
  specification_version: 4
150
72
  summary: JSON Implementation for Ruby
151
- test_files:
152
- - tests/test_helper.rb
73
+ test_files: []
@@ -1 +0,0 @@
1
- {"Extra value after close": true} "misplaced quoted value"
@@ -1 +0,0 @@
1
- {"Illegal expression": 1 + 2}
@@ -1 +0,0 @@
1
- {"Illegal invocation": alert()}
@@ -1 +0,0 @@
1
- {"Numbers cannot have leading zeroes": 013}
@@ -1 +0,0 @@
1
- {"Numbers cannot be hex": 0x14}
@@ -1 +0,0 @@
1
- [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
@@ -1 +0,0 @@
1
- {"Missing colon" null}
@@ -1 +0,0 @@
1
- ["Unclosed array"
@@ -1 +0,0 @@
1
- {"Double colon":: null}
@@ -1 +0,0 @@
1
- {"Comma instead of colon", null}
@@ -1 +0,0 @@
1
- ["Colon instead of comma": false]
@@ -1 +0,0 @@
1
- ["Bad value", truth]
@@ -1 +0,0 @@
1
- ['single quote']
@@ -1 +0,0 @@
1
- ["tab character in string "]
@@ -1,2 +0,0 @@
1
- ["line
2
- break"]
@@ -1,2 +0,0 @@
1
- ["line\
2
- break"]
@@ -1 +0,0 @@
1
- {
@@ -1 +0,0 @@
1
- {unquoted_key: "keys must be quoted"}
@@ -1 +0,0 @@
1
- [
@@ -1 +0,0 @@
1
- [1, 2, 3,
@@ -1 +0,0 @@
1
- {"foo": "bar"
@@ -1 +0,0 @@
1
- ["extra comma",]
@@ -1 +0,0 @@
1
- ["double extra comma",,]
@@ -1 +0,0 @@
1
- [ , "<-- missing value"]
@@ -1 +0,0 @@
1
- ["Comma after the close"],
@@ -1 +0,0 @@
1
- ["Extra close"]]
@@ -1 +0,0 @@
1
- {"Extra comma": true,}
@@ -1 +0,0 @@
1
- "A JSON payload should be an object or array, not a string."
@@ -1,56 +0,0 @@
1
- [
2
- "JSON Test Pattern pass1",
3
- {"object with 1 member":["array with 1 element"]},
4
- {},
5
- [],
6
- -42,
7
- true,
8
- false,
9
- null,
10
- {
11
- "integer": 1234567890,
12
- "real": -9876.543210,
13
- "e": 0.123456789e-12,
14
- "E": 1.234567890E+34,
15
- "": 23456789012E666,
16
- "zero": 0,
17
- "one": 1,
18
- "space": " ",
19
- "quote": "\"",
20
- "backslash": "\\",
21
- "controls": "\b\f\n\r\t",
22
- "slash": "/ & \/",
23
- "alpha": "abcdefghijklmnopqrstuvwyz",
24
- "ALPHA": "ABCDEFGHIJKLMNOPQRSTUVWYZ",
25
- "digit": "0123456789",
26
- "special": "`1~!@#$%^&*()_+-={':[,]}|;.</>?",
27
- "hex": "\u0123\u4567\u89AB\uCDEF\uabcd\uef4A",
28
- "true": true,
29
- "false": false,
30
- "null": null,
31
- "array":[ ],
32
- "object":{ },
33
- "address": "50 St. James Street",
34
- "url": "http://www.JSON.org/",
35
- "comment": "// /* <!-- --",
36
- "# -- --> */": " ",
37
- " s p a c e d " :[1,2 , 3
38
-
39
- ,
40
-
41
- 4 , 5 , 6 ,7 ],
42
- "compact": [1,2,3,4,5,6,7],
43
- "jsontext": "{\"object with 1 member\":[\"array with 1 element\"]}",
44
- "quotes": "&#34; \u0022 %22 0x22 034 &#x22;",
45
- "\/\\\"\uCAFE\uBABE\uAB98\uFCDE\ubcda\uef4A\b\f\n\r\t`1~!@#$%^&*()_+-=[]{}|;:',./<>?"
46
- : "A key can be any string"
47
- },
48
- 0.5 ,98.6
49
- ,
50
- 99.44
51
- ,
52
-
53
- 1066
54
-
55
-
56
- ,"rosebud"]
@@ -1 +0,0 @@
1
- ["Illegal backslash escape: \x15"]
@@ -1 +0,0 @@
1
- ["Illegal backslash escape: \'"]
@@ -1 +0,0 @@
1
- ["Illegal backslash escape: \017"]
@@ -1 +0,0 @@
1
- [[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]]
@@ -1 +0,0 @@
1
- ["tab\ character\ in\ string\ "]
@@ -1,6 +0,0 @@
1
- {
2
- "JSON Test Pattern pass3": {
3
- "The outermost value": "must be an object or array.",
4
- "In this test": "It is an object."
5
- }
6
- }
@@ -1,199 +0,0 @@
1
- #frozen_string_literal: false
2
- require 'test_helper'
3
- require 'json/add/core'
4
- require 'json/add/complex'
5
- require 'json/add/rational'
6
- require 'json/add/bigdecimal'
7
- require 'json/add/ostruct'
8
- require 'json/add/set'
9
- require 'date'
10
-
11
- class JSONAdditionTest < Test::Unit::TestCase
12
- include JSON
13
-
14
- class A
15
- def initialize(a)
16
- @a = a
17
- end
18
-
19
- attr_reader :a
20
-
21
- def ==(other)
22
- a == other.a
23
- end
24
-
25
- def self.json_create(object)
26
- new(*object['args'])
27
- end
28
-
29
- def to_json(*args)
30
- {
31
- 'json_class' => self.class.name,
32
- 'args' => [ @a ],
33
- }.to_json(*args)
34
- end
35
- end
36
-
37
- class A2 < A
38
- def to_json(*args)
39
- {
40
- 'json_class' => self.class.name,
41
- 'args' => [ @a ],
42
- }.to_json(*args)
43
- end
44
- end
45
-
46
- class B
47
- def self.json_creatable?
48
- false
49
- end
50
-
51
- def to_json(*args)
52
- {
53
- 'json_class' => self.class.name,
54
- }.to_json(*args)
55
- end
56
- end
57
-
58
- class C
59
- def self.json_creatable?
60
- false
61
- end
62
-
63
- def to_json(*args)
64
- {
65
- 'json_class' => 'JSONAdditionTest::Nix',
66
- }.to_json(*args)
67
- end
68
- end
69
-
70
- def test_extended_json
71
- a = A.new(666)
72
- assert A.json_creatable?
73
- json = generate(a)
74
- a_again = parse(json, :create_additions => true)
75
- assert_kind_of a.class, a_again
76
- assert_equal a, a_again
77
- end
78
-
79
- def test_extended_json_default
80
- a = A.new(666)
81
- assert A.json_creatable?
82
- json = generate(a)
83
- a_hash = parse(json)
84
- assert_kind_of Hash, a_hash
85
- end
86
-
87
- def test_extended_json_disabled
88
- a = A.new(666)
89
- assert A.json_creatable?
90
- json = generate(a)
91
- a_again = parse(json, :create_additions => true)
92
- assert_kind_of a.class, a_again
93
- assert_equal a, a_again
94
- a_hash = parse(json, :create_additions => false)
95
- assert_kind_of Hash, a_hash
96
- assert_equal(
97
- {"args"=>[666], "json_class"=>"JSONAdditionTest::A"}.sort_by { |k,| k },
98
- a_hash.sort_by { |k,| k }
99
- )
100
- end
101
-
102
- def test_extended_json_fail1
103
- b = B.new
104
- assert !B.json_creatable?
105
- json = generate(b)
106
- assert_equal({ "json_class"=>"JSONAdditionTest::B" }, parse(json))
107
- end
108
-
109
- def test_extended_json_fail2
110
- c = C.new
111
- assert !C.json_creatable?
112
- json = generate(c)
113
- assert_raise(ArgumentError, NameError) { parse(json, :create_additions => true) }
114
- end
115
-
116
- def test_raw_strings
117
- raw = ''
118
- raw.respond_to?(:encode!) and raw.encode!(Encoding::ASCII_8BIT)
119
- raw_array = []
120
- for i in 0..255
121
- raw << i
122
- raw_array << i
123
- end
124
- json = raw.to_json_raw
125
- json_raw_object = raw.to_json_raw_object
126
- hash = { 'json_class' => 'String', 'raw'=> raw_array }
127
- assert_equal hash, json_raw_object
128
- assert_match(/\A\{.*\}\z/, json)
129
- assert_match(/"json_class":"String"/, json)
130
- assert_match(/"raw":\[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255\]/, json)
131
- raw_again = parse(json, :create_additions => true)
132
- assert_equal raw, raw_again
133
- end
134
-
135
- MyJsonStruct = Struct.new 'MyJsonStruct', :foo, :bar
136
-
137
- def test_core
138
- t = Time.now
139
- assert_equal t, JSON(JSON(t), :create_additions => true)
140
- d = Date.today
141
- assert_equal d, JSON(JSON(d), :create_additions => true)
142
- d = DateTime.civil(2007, 6, 14, 14, 57, 10, Rational(1, 12), 2299161)
143
- assert_equal d, JSON(JSON(d), :create_additions => true)
144
- assert_equal 1..10, JSON(JSON(1..10), :create_additions => true)
145
- assert_equal 1...10, JSON(JSON(1...10), :create_additions => true)
146
- assert_equal "a".."c", JSON(JSON("a".."c"), :create_additions => true)
147
- assert_equal "a"..."c", JSON(JSON("a"..."c"), :create_additions => true)
148
- s = MyJsonStruct.new 4711, 'foot'
149
- assert_equal s, JSON(JSON(s), :create_additions => true)
150
- struct = Struct.new :foo, :bar
151
- s = struct.new 4711, 'foot'
152
- assert_raise(JSONError) { JSON(s) }
153
- begin
154
- raise TypeError, "test me"
155
- rescue TypeError => e
156
- e_json = JSON.generate e
157
- e_again = JSON e_json, :create_additions => true
158
- assert_kind_of TypeError, e_again
159
- assert_equal e.message, e_again.message
160
- assert_equal e.backtrace, e_again.backtrace
161
- end
162
- assert_equal(/foo/, JSON(JSON(/foo/), :create_additions => true))
163
- assert_equal(/foo/i, JSON(JSON(/foo/i), :create_additions => true))
164
- end
165
-
166
- def test_utc_datetime
167
- now = Time.now
168
- d = DateTime.parse(now.to_s, :create_additions => true) # usual case
169
- assert_equal d, parse(d.to_json, :create_additions => true)
170
- d = DateTime.parse(now.utc.to_s) # of = 0
171
- assert_equal d, parse(d.to_json, :create_additions => true)
172
- d = DateTime.civil(2008, 6, 17, 11, 48, 32, Rational(1,24))
173
- assert_equal d, parse(d.to_json, :create_additions => true)
174
- d = DateTime.civil(2008, 6, 17, 11, 48, 32, Rational(12,24))
175
- assert_equal d, parse(d.to_json, :create_additions => true)
176
- end
177
-
178
- def test_rational_complex
179
- assert_equal Rational(2, 9), parse(JSON(Rational(2, 9)), :create_additions => true)
180
- assert_equal Complex(2, 9), parse(JSON(Complex(2, 9)), :create_additions => true)
181
- end
182
-
183
- def test_bigdecimal
184
- assert_equal BigDecimal('3.141', 23), JSON(JSON(BigDecimal('3.141', 23)), :create_additions => true)
185
- assert_equal BigDecimal('3.141', 666), JSON(JSON(BigDecimal('3.141', 666)), :create_additions => true)
186
- end
187
-
188
- def test_ostruct
189
- o = OpenStruct.new
190
- # XXX this won't work; o.foo = { :bar => true }
191
- o.foo = { 'bar' => true }
192
- assert_equal o, parse(JSON(o), :create_additions => true)
193
- end
194
-
195
- def test_set
196
- s = Set.new([:a, :b, :c, :a])
197
- assert_equal s, JSON.parse(JSON(s), :create_additions => true)
198
- end
199
- end