multi_json 1.0.0.rc → 1.0.0.rc2
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.
- data/Gemfile +5 -1
- data/lib/multi_json.rb +2 -0
- data/lib/multi_json/version.rb +1 -1
- data/multi_json.gemspec +0 -13
- data/spec/multi_json_spec.rb +6 -1
- data/spec/spec_helper.rb +7 -1
- metadata +6 -94
data/Gemfile
CHANGED
@@ -2,6 +2,10 @@ source "http://rubygems.org"
|
|
2
2
|
|
3
3
|
gemspec
|
4
4
|
|
5
|
+
gem 'rake', '~> 0.8'
|
6
|
+
gem 'rspec', '~> 2.5'
|
7
|
+
gem 'rcov', '~> 0.9', :platforms => [:mri, :jruby]
|
8
|
+
|
5
9
|
gem 'json', '~> 1.4', :require => nil
|
6
10
|
gem 'json_pure', '~> 1.4', :require => nil
|
7
|
-
gem 'yajl-ruby', '~> 0.7', :require => nil, :platforms => :ruby
|
11
|
+
gem 'yajl-ruby', '~> 0.7', :require => nil, :platforms => :ruby
|
data/lib/multi_json.rb
CHANGED
data/lib/multi_json/version.rb
CHANGED
data/multi_json.gemspec
CHANGED
@@ -21,18 +21,5 @@ Gem::Specification.new do |s|
|
|
21
21
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
22
22
|
|
23
23
|
s.require_paths = ["lib"]
|
24
|
-
|
25
|
-
s.add_development_dependency("rake", "~> 0.8")
|
26
|
-
s.add_development_dependency("rspec", "~> 2.0")
|
27
|
-
s.add_development_dependency("json", "~> 1.4")
|
28
|
-
s.add_development_dependency("json_pure", "~> 1.4")
|
29
|
-
|
30
|
-
unless ENV['RUBY_VERSION'].match(/^rbx-/)
|
31
|
-
s.add_development_dependency("rcov", "~> 0.9")
|
32
|
-
end
|
33
|
-
|
34
|
-
unless ENV['RUBY_VERSION'].match(/^jruby-/)
|
35
|
-
s.add_development_dependency("yajl-ruby", "~> 0.7")
|
36
|
-
end
|
37
24
|
end
|
38
25
|
|
data/spec/multi_json_spec.rb
CHANGED
@@ -14,7 +14,7 @@ describe "MultiJson" do
|
|
14
14
|
context 'engines' do
|
15
15
|
it 'should default to the best available gem' do
|
16
16
|
# the yajl-ruby gem does not work on jruby, so the best engine is the JsonGem engine
|
17
|
-
if
|
17
|
+
if jruby?
|
18
18
|
require 'json'
|
19
19
|
MultiJson.engine.name.should == 'MultiJson::Engines::JsonGem'
|
20
20
|
else
|
@@ -53,6 +53,11 @@ describe "MultiJson" do
|
|
53
53
|
MultiJson.decode(MultiJson.encode(example)).should == example
|
54
54
|
end
|
55
55
|
end
|
56
|
+
|
57
|
+
it 'should encode symbol keys as strings' do
|
58
|
+
encoded_json = MultiJson.encode({ :foo => { :bar => 'baz' } })
|
59
|
+
MultiJson.decode(encoded_json).should == { 'foo' => { 'bar' => 'baz' } }
|
60
|
+
end
|
56
61
|
end
|
57
62
|
|
58
63
|
describe '.decode' do
|
data/spec/spec_helper.rb
CHANGED
@@ -4,6 +4,12 @@ rescue LoadError
|
|
4
4
|
puts "although not required, it's recommended that you use bundler during development"
|
5
5
|
end
|
6
6
|
|
7
|
-
require 'multi_json'
|
8
7
|
require 'rspec'
|
9
8
|
require 'rspec/autorun'
|
9
|
+
|
10
|
+
$VERBOSE = true
|
11
|
+
require 'multi_json'
|
12
|
+
|
13
|
+
def jruby?
|
14
|
+
defined?(RUBY_ENGINE) && RUBY_ENGINE == "jruby"
|
15
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multi_json
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15424049
|
5
5
|
prerelease: 6
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 0
|
9
9
|
- 0
|
10
10
|
- rc
|
11
|
-
|
11
|
+
- 2
|
12
|
+
version: 1.0.0.rc2
|
12
13
|
platform: ruby
|
13
14
|
authors:
|
14
15
|
- Michael Bleigh
|
@@ -16,98 +17,9 @@ autorequire:
|
|
16
17
|
bindir: bin
|
17
18
|
cert_chain: []
|
18
19
|
|
19
|
-
date: 2011-04-
|
20
|
-
dependencies:
|
21
|
-
|
22
|
-
name: rake
|
23
|
-
prerelease: false
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 27
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
- 8
|
33
|
-
version: "0.8"
|
34
|
-
type: :development
|
35
|
-
version_requirements: *id001
|
36
|
-
- !ruby/object:Gem::Dependency
|
37
|
-
name: rspec
|
38
|
-
prerelease: false
|
39
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
40
|
-
none: false
|
41
|
-
requirements:
|
42
|
-
- - ~>
|
43
|
-
- !ruby/object:Gem::Version
|
44
|
-
hash: 3
|
45
|
-
segments:
|
46
|
-
- 2
|
47
|
-
- 0
|
48
|
-
version: "2.0"
|
49
|
-
type: :development
|
50
|
-
version_requirements: *id002
|
51
|
-
- !ruby/object:Gem::Dependency
|
52
|
-
name: json
|
53
|
-
prerelease: false
|
54
|
-
requirement: &id003 !ruby/object:Gem::Requirement
|
55
|
-
none: false
|
56
|
-
requirements:
|
57
|
-
- - ~>
|
58
|
-
- !ruby/object:Gem::Version
|
59
|
-
hash: 7
|
60
|
-
segments:
|
61
|
-
- 1
|
62
|
-
- 4
|
63
|
-
version: "1.4"
|
64
|
-
type: :development
|
65
|
-
version_requirements: *id003
|
66
|
-
- !ruby/object:Gem::Dependency
|
67
|
-
name: json_pure
|
68
|
-
prerelease: false
|
69
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
70
|
-
none: false
|
71
|
-
requirements:
|
72
|
-
- - ~>
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
hash: 7
|
75
|
-
segments:
|
76
|
-
- 1
|
77
|
-
- 4
|
78
|
-
version: "1.4"
|
79
|
-
type: :development
|
80
|
-
version_requirements: *id004
|
81
|
-
- !ruby/object:Gem::Dependency
|
82
|
-
name: rcov
|
83
|
-
prerelease: false
|
84
|
-
requirement: &id005 !ruby/object:Gem::Requirement
|
85
|
-
none: false
|
86
|
-
requirements:
|
87
|
-
- - ~>
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
hash: 25
|
90
|
-
segments:
|
91
|
-
- 0
|
92
|
-
- 9
|
93
|
-
version: "0.9"
|
94
|
-
type: :development
|
95
|
-
version_requirements: *id005
|
96
|
-
- !ruby/object:Gem::Dependency
|
97
|
-
name: yajl-ruby
|
98
|
-
prerelease: false
|
99
|
-
requirement: &id006 !ruby/object:Gem::Requirement
|
100
|
-
none: false
|
101
|
-
requirements:
|
102
|
-
- - ~>
|
103
|
-
- !ruby/object:Gem::Version
|
104
|
-
hash: 5
|
105
|
-
segments:
|
106
|
-
- 0
|
107
|
-
- 7
|
108
|
-
version: "0.7"
|
109
|
-
type: :development
|
110
|
-
version_requirements: *id006
|
20
|
+
date: 2011-04-18 00:00:00 Z
|
21
|
+
dependencies: []
|
22
|
+
|
111
23
|
description: A gem to provide swappable JSON backends utilizing Yajl::Ruby, the JSON gem, ActiveSupport, or JSON pure.
|
112
24
|
email:
|
113
25
|
- michael@intridea.com
|