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 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
@@ -2,6 +2,8 @@ module MultiJson
2
2
  class DecodeError < StandardError; end
3
3
  module_function
4
4
 
5
+ @engine = nil
6
+
5
7
  # Get the current engine class.
6
8
  def engine
7
9
  return @engine if @engine
@@ -1,3 +1,3 @@
1
1
  module MultiJson
2
- VERSION = "1.0.0.rc"
2
+ VERSION = "1.0.0.rc2"
3
3
  end
@@ -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
 
@@ -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 ENV['RUBY_VERSION'].match(/^jruby-/)
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
@@ -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: 7712010
4
+ hash: 15424049
5
5
  prerelease: 6
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
9
  - 0
10
10
  - rc
11
- version: 1.0.0.rc
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-14 00:00:00 Z
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
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