phocoder-rb 0.1.3 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1,2 @@
1
- 0.1.3
1
+ 0.1.6
2
+
data/lib/phocoder/base.rb CHANGED
@@ -28,15 +28,19 @@ module Phocoder
28
28
  end
29
29
 
30
30
  def self.decode(content, format=nil)
31
- if content.is_a?(String)
32
- if format.to_s == 'xml'
33
- Hash.from_xml(content)
31
+ begin
32
+ if content.is_a?(String)
33
+ if format.to_s == 'xml'
34
+ Hash.from_xml(content)
35
+ else
36
+ ActiveSupport::JSON.decode(content)
37
+ end
34
38
  else
35
- ActiveSupport::JSON.decode(content)
39
+ content
36
40
  end
37
- else
41
+ rescue Exception => e
38
42
  content
39
- end
43
+ end
40
44
  end
41
45
 
42
46
  def decode(content, format=nil)
data/lib/phocoder/job.rb CHANGED
@@ -1,9 +1,13 @@
1
1
  module Phocoder
2
2
  class Job < Base
3
+
4
+ def self.pick_format(options)
5
+ options[:format] || "json"
6
+ end
3
7
 
4
8
  def self.create(params={}, options={})
5
9
  params = apply_api_key(params, options[:format])
6
- HTTP.post("#{options[:base_url] || base_url}/jobs",
10
+ HTTP.post("#{options[:base_url] || base_url}/jobs.#{pick_format options}",
7
11
  encode(params, options[:format]),
8
12
  options)
9
13
  end
@@ -14,27 +18,27 @@ module Phocoder
14
18
  :per_page => options.delete(:per_page) || 50,
15
19
  :state => options.delete(:state) }
16
20
 
17
- HTTP.get("#{options[:base_url] || base_url}/jobs", merge_params(options, params))
21
+ HTTP.get("#{options[:base_url] || base_url}/jobs.#{pick_format options}", merge_params(options, params))
18
22
  end
19
23
 
20
24
  def self.details(job_id, options={})
21
25
  params = {:api_key => options.delete(:api_key) || api_key}
22
- HTTP.get("#{options[:base_url] || base_url}/jobs/#{job_id}", merge_params(options, params))
26
+ HTTP.get("#{options[:base_url] || base_url}/jobs/#{job_id}.#{pick_format options}", merge_params(options, params))
23
27
  end
24
28
 
25
29
  def self.resubmit(job_id, options={})
26
30
  params = {:api_key => options.delete(:api_key) || api_key}
27
- HTTP.get("#{options[:base_url] || base_url}/jobs/#{job_id}/resubmit", merge_params(options, params))
31
+ HTTP.get("#{options[:base_url] || base_url}/jobs/#{job_id}/resubmit.#{pick_format options}", merge_params(options, params))
28
32
  end
29
33
 
30
34
  def self.cancel(job_id, options={})
31
35
  params = {:api_key => options.delete(:api_key) || api_key}
32
- HTTP.get("#{options[:base_url] || base_url}/jobs/#{job_id}/cancel", merge_params(options, params))
36
+ HTTP.get("#{options[:base_url] || base_url}/jobs/#{job_id}/cancel.#{pick_format options}", merge_params(options, params))
33
37
  end
34
38
 
35
39
  def self.delete(job_id, options={})
36
40
  params = {:api_key => options.delete(:api_key) || api_key}
37
- HTTP.delete("#{options[:base_url] || base_url}/jobs/#{job_id}", merge_params(options, params))
41
+ HTTP.delete("#{options[:base_url] || base_url}/jobs/#{job_id}.#{pick_format options}", merge_params(options, params))
38
42
  end
39
43
 
40
44
 
data/phocoder-rb.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{phocoder-rb}
8
- s.version = "0.1.3"
8
+ s.version = "0.1.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Jeremy Green"]
12
- s.date = %q{2011-02-10}
11
+ s.authors = [%q{Jeremy Green}]
12
+ s.date = %q{2011-12-23}
13
13
  s.description = %q{The ruby client for the phocoder.com API.}
14
14
  s.email = %q{jagthedrummer@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -20,7 +20,6 @@ Gem::Specification.new do |s|
20
20
  ".document",
21
21
  ".rspec",
22
22
  "Gemfile",
23
- "Gemfile.lock",
24
23
  "LICENSE.txt",
25
24
  "README.rdoc",
26
25
  "Rakefile",
@@ -45,9 +44,9 @@ Gem::Specification.new do |s|
45
44
  "spec/spec_helper.rb"
46
45
  ]
47
46
  s.homepage = %q{http://github.com/jagthedrummer/phocoder-rb}
48
- s.licenses = ["MIT"]
49
- s.require_paths = ["lib"]
50
- s.rubygems_version = %q{1.3.7}
47
+ s.licenses = [%q{MIT}]
48
+ s.require_paths = [%q{lib}]
49
+ s.rubygems_version = %q{1.8.7}
51
50
  s.summary = %q{The ruby client for the phocoder.com API.}
52
51
  s.test_files = [
53
52
  "spec/phocoder/http/net_http_spec.rb",
@@ -60,7 +59,6 @@ Gem::Specification.new do |s|
60
59
  ]
61
60
 
62
61
  if s.respond_to? :specification_version then
63
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
64
62
  s.specification_version = 3
65
63
 
66
64
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
@@ -63,7 +63,7 @@ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
63
63
 
64
64
  describe ".post" do
65
65
  it "should POST to specified body to the specified path" do
66
- Phocoder::HTTP.http_backend.expects(:post).
66
+ Phocoder::HTTP::NetHTTP.expects(:post).
67
67
  with('https://example.com',:body => '{}').
68
68
  returns(Phocoder::Response.new)
69
69
  Phocoder::HTTP::NetHTTP.post('https://example.com',:body => '{}').should_not be_nil
@@ -72,7 +72,7 @@ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
72
72
 
73
73
  describe ".put" do
74
74
  it "should PUT to specified body to the specified path" do
75
- Phocoder::HTTP.http_backend.expects(:put).
75
+ Phocoder::HTTP::NetHTTP.expects(:put).
76
76
  with('https://example.com',:body => '{}').
77
77
  returns(Phocoder::Response.new)
78
78
  Phocoder::HTTP::NetHTTP.put('https://example.com', :body => '{}')
@@ -81,7 +81,7 @@ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
81
81
 
82
82
  describe ".get" do
83
83
  it "should GET to specified body to the specified path" do
84
- Phocoder::HTTP.http_backend.expects(:get).
84
+ Phocoder::HTTP::NetHTTP.expects(:get).
85
85
  with('https://example.com').
86
86
  returns(Phocoder::Response.new)
87
87
  Phocoder::HTTP::NetHTTP.get('https://example.com')
@@ -90,7 +90,7 @@ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
90
90
 
91
91
  describe ".delete" do
92
92
  it "should DELETE to specified body to the specified path" do
93
- Phocoder::HTTP.http_backend.expects(:delete).
93
+ Phocoder::HTTP::NetHTTP.expects(:delete).
94
94
  with('https://example.com').
95
95
  returns(Phocoder::Response.new)
96
96
  Phocoder::HTTP::NetHTTP.delete('https://example.com')
@@ -15,14 +15,14 @@ describe "Phocoder::Job" do
15
15
  end
16
16
 
17
17
  it "should POST to the correct url and return a response" do
18
- Phocoder::HTTP.expects(:post).with(@url, @params_as_json, {}).returns(Phocoder::Response.new)
18
+ Phocoder::HTTP.expects(:post).with(@url + ".json", @params_as_json, {}).returns(Phocoder::Response.new)
19
19
  r = Phocoder::Job.create(@params)
20
20
  r.class.should == Phocoder::Response
21
21
  end
22
22
 
23
23
  it "should apply the global API key when JSON and no api_key is passed" do
24
24
  Phocoder.api_key = 'asdfasdf'
25
- Phocoder::HTTP.expects(:post).with(@url,@params_as_json,{}) do |url, params, options|
25
+ Phocoder::HTTP.expects(:post).with(@url + ".json",@params_as_json,{}) do |url, params, options|
26
26
  Phocoder::Base.decode(params)['api_key'].should == Phocoder.api_key
27
27
  end.returns(Phocoder::Response.new)
28
28
  Phocoder::Job.create(:input => @params[:input])
@@ -31,7 +31,7 @@ describe "Phocoder::Job" do
31
31
 
32
32
  it "should apply the global API key when XML and no api_key is passed" do
33
33
  Phocoder.api_key = 'asdfasdf'
34
- Phocoder::HTTP.expects(:post).with(@url,@params_as_xml,{}) do |url, params, options|
34
+ Phocoder::HTTP.expects(:post).with(@url + ".xml",@params_as_xml,{}) do |url, params, options|
35
35
  Phocoder::Base.decode(params, :xml)['api_request']['api_key'].should == Phocoder.api_key
36
36
  end.returns(Phocoder::Response.new)
37
37
  Phocoder::Job.create({:api_request => {:input => @params[:input]}}, {:format => :xml})
@@ -40,7 +40,7 @@ describe "Phocoder::Job" do
40
40
 
41
41
  it "should apply the global API key when an XML string is passed and no api_key is passed" do
42
42
  Phocoder.api_key = 'asdfasdf'
43
- Phocoder::HTTP.expects(:post).with(@url,@params_as_xml,{}) do |url, params, options|
43
+ Phocoder::HTTP.expects(:post).with(@url + ".json",@params_as_xml,{}) do |url, params, options|
44
44
  Phocoder::Base.decode(params, :xml)['api_request']['api_key'] == Phocoder.api_key
45
45
  end.returns(Phocoder::Response.new)
46
46
  Phocoder::Job.create({:input => @params[:input]}.to_xml(:root => :api_request), {:format => :xml})
@@ -56,7 +56,7 @@ describe "Phocoder::Job" do
56
56
  end
57
57
 
58
58
  it "should GET the correct url and return a response" do
59
- Phocoder::HTTP.stubs(:get).with(@url, {:params => {:api_key => @api_key,
59
+ Phocoder::HTTP.stubs(:get).with(@url + ".json", {:params => {:api_key => @api_key,
60
60
  :page => 1,
61
61
  :per_page => 50,
62
62
  :state => nil}}).returns(Phocoder::Response.new)
@@ -64,7 +64,7 @@ describe "Phocoder::Job" do
64
64
  end
65
65
 
66
66
  it "should merge params well" do
67
- Phocoder::HTTP.stubs(:get).with(@url, {:params => {:api_key => @api_key,
67
+ Phocoder::HTTP.stubs(:get).with(@url + ".json", {:params => {:api_key => @api_key,
68
68
  :page => 1,
69
69
  :per_page => 50,
70
70
  :some => 'param',
@@ -80,7 +80,7 @@ describe "Phocoder::Job" do
80
80
  end
81
81
 
82
82
  it "should GET the correct url and return a response" do
83
- Phocoder::HTTP.stubs(:get).with(@url, {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
83
+ Phocoder::HTTP.stubs(:get).with(@url + ".json", {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
84
84
  Phocoder::Response.should == Phocoder::Job.details(1, :api_key => @api_key).class
85
85
  end
86
86
  end
@@ -92,7 +92,7 @@ describe "Phocoder::Job" do
92
92
  end
93
93
 
94
94
  it "should GET the correct url and return a response" do
95
- Phocoder::HTTP.stubs(:get).with(@url, {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
95
+ Phocoder::HTTP.stubs(:get).with(@url + ".json", {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
96
96
  Phocoder::Response.should == Phocoder::Job.resubmit(1, :api_key => @api_key).class
97
97
  end
98
98
  end
@@ -104,7 +104,7 @@ describe "Phocoder::Job" do
104
104
  end
105
105
 
106
106
  it "should GET the correct url and return a response" do
107
- Phocoder::HTTP.stubs(:get).with(@url, {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
107
+ Phocoder::HTTP.stubs(:get).with(@url + ".json", {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
108
108
  Phocoder::Response.should == Phocoder::Job.cancel(1, :api_key => @api_key).class
109
109
  end
110
110
  end
@@ -116,7 +116,7 @@ describe "Phocoder::Job" do
116
116
  end
117
117
 
118
118
  it "should DELETE the correct url and return a response" do
119
- Phocoder::HTTP.stubs(:delete).with(@url, {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
119
+ Phocoder::HTTP.stubs(:delete).with(@url + ".json", {:params => {:api_key => @api_key}}).returns(Phocoder::Response.new)
120
120
  Phocoder::Response.should == Phocoder::Job.delete(1, :api_key => @api_key).class
121
121
  end
122
122
  end
metadata CHANGED
@@ -1,173 +1,126 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: phocoder-rb
3
- version: !ruby/object:Gem::Version
4
- hash: 29
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 1
9
- - 3
10
- version: 0.1.3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.6
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Jeremy Green
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-02-10 00:00:00 -06:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
22
- prerelease: false
12
+ date: 2011-12-23 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
23
15
  name: activesupport
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &74393930 !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
18
+ requirements:
27
19
  - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 7
30
- segments:
31
- - 3
32
- - 0
33
- - 0
20
+ - !ruby/object:Gem::Version
34
21
  version: 3.0.0
35
- requirement: *id001
36
22
  type: :runtime
37
- - !ruby/object:Gem::Dependency
38
23
  prerelease: false
24
+ version_requirements: *74393930
25
+ - !ruby/object:Gem::Dependency
39
26
  name: i18n
40
- version_requirements: &id002 !ruby/object:Gem::Requirement
27
+ requirement: &74393690 !ruby/object:Gem::Requirement
41
28
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 3
46
- segments:
47
- - 0
48
- version: "0"
49
- requirement: *id002
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
50
33
  type: :runtime
51
- - !ruby/object:Gem::Dependency
52
34
  prerelease: false
35
+ version_requirements: *74393690
36
+ - !ruby/object:Gem::Dependency
53
37
  name: builder
54
- version_requirements: &id003 !ruby/object:Gem::Requirement
38
+ requirement: &74393450 !ruby/object:Gem::Requirement
55
39
  none: false
56
- requirements:
57
- - - ">="
58
- - !ruby/object:Gem::Version
59
- hash: 3
60
- segments:
61
- - 0
62
- version: "0"
63
- requirement: *id003
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
64
44
  type: :runtime
65
- - !ruby/object:Gem::Dependency
66
45
  prerelease: false
46
+ version_requirements: *74393450
47
+ - !ruby/object:Gem::Dependency
67
48
  name: rspec
68
- version_requirements: &id004 !ruby/object:Gem::Requirement
49
+ requirement: &74393210 !ruby/object:Gem::Requirement
69
50
  none: false
70
- requirements:
51
+ requirements:
71
52
  - - ~>
72
- - !ruby/object:Gem::Version
73
- hash: 11
74
- segments:
75
- - 2
76
- - 1
77
- - 0
53
+ - !ruby/object:Gem::Version
78
54
  version: 2.1.0
79
- requirement: *id004
80
55
  type: :development
81
- - !ruby/object:Gem::Dependency
82
56
  prerelease: false
57
+ version_requirements: *74393210
58
+ - !ruby/object:Gem::Dependency
83
59
  name: bundler
84
- version_requirements: &id005 !ruby/object:Gem::Requirement
60
+ requirement: &74392970 !ruby/object:Gem::Requirement
85
61
  none: false
86
- requirements:
62
+ requirements:
87
63
  - - ~>
88
- - !ruby/object:Gem::Version
89
- hash: 23
90
- segments:
91
- - 1
92
- - 0
93
- - 0
64
+ - !ruby/object:Gem::Version
94
65
  version: 1.0.0
95
- requirement: *id005
96
66
  type: :development
97
- - !ruby/object:Gem::Dependency
98
67
  prerelease: false
68
+ version_requirements: *74392970
69
+ - !ruby/object:Gem::Dependency
99
70
  name: jeweler
100
- version_requirements: &id006 !ruby/object:Gem::Requirement
71
+ requirement: &74392730 !ruby/object:Gem::Requirement
101
72
  none: false
102
- requirements:
73
+ requirements:
103
74
  - - ~>
104
- - !ruby/object:Gem::Version
105
- hash: 1
106
- segments:
107
- - 1
108
- - 5
109
- - 1
75
+ - !ruby/object:Gem::Version
110
76
  version: 1.5.1
111
- requirement: *id006
112
77
  type: :development
113
- - !ruby/object:Gem::Dependency
114
78
  prerelease: false
79
+ version_requirements: *74392730
80
+ - !ruby/object:Gem::Dependency
115
81
  name: rcov
116
- version_requirements: &id007 !ruby/object:Gem::Requirement
82
+ requirement: &74392490 !ruby/object:Gem::Requirement
117
83
  none: false
118
- requirements:
119
- - - ">="
120
- - !ruby/object:Gem::Version
121
- hash: 3
122
- segments:
123
- - 0
124
- version: "0"
125
- requirement: *id007
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
126
88
  type: :development
127
- - !ruby/object:Gem::Dependency
128
89
  prerelease: false
90
+ version_requirements: *74392490
91
+ - !ruby/object:Gem::Dependency
129
92
  name: mocha
130
- version_requirements: &id008 !ruby/object:Gem::Requirement
93
+ requirement: &74392250 !ruby/object:Gem::Requirement
131
94
  none: false
132
- requirements:
133
- - - ">="
134
- - !ruby/object:Gem::Version
135
- hash: 3
136
- segments:
137
- - 0
138
- version: "0"
139
- requirement: *id008
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
140
99
  type: :development
141
- - !ruby/object:Gem::Dependency
142
100
  prerelease: false
101
+ version_requirements: *74392250
102
+ - !ruby/object:Gem::Dependency
143
103
  name: webmock
144
- version_requirements: &id009 !ruby/object:Gem::Requirement
104
+ requirement: &74392010 !ruby/object:Gem::Requirement
145
105
  none: false
146
- requirements:
106
+ requirements:
147
107
  - - ~>
148
- - !ruby/object:Gem::Version
149
- hash: 15
150
- segments:
151
- - 1
152
- - 6
153
- - 0
108
+ - !ruby/object:Gem::Version
154
109
  version: 1.6.0
155
- requirement: *id009
156
110
  type: :development
111
+ prerelease: false
112
+ version_requirements: *74392010
157
113
  description: The ruby client for the phocoder.com API.
158
114
  email: jagthedrummer@gmail.com
159
115
  executables: []
160
-
161
116
  extensions: []
162
-
163
- extra_rdoc_files:
117
+ extra_rdoc_files:
164
118
  - LICENSE.txt
165
119
  - README.rdoc
166
- files:
120
+ files:
167
121
  - .document
168
122
  - .rspec
169
123
  - Gemfile
170
- - Gemfile.lock
171
124
  - LICENSE.txt
172
125
  - README.rdoc
173
126
  - Rakefile
@@ -190,41 +143,35 @@ files:
190
143
  - spec/phocoder/phocoder_spec.rb
191
144
  - spec/phocoder/response_spec.rb
192
145
  - spec/spec_helper.rb
193
- has_rdoc: true
194
146
  homepage: http://github.com/jagthedrummer/phocoder-rb
195
- licenses:
147
+ licenses:
196
148
  - MIT
197
149
  post_install_message:
198
150
  rdoc_options: []
199
-
200
- require_paths:
151
+ require_paths:
201
152
  - lib
202
- required_ruby_version: !ruby/object:Gem::Requirement
153
+ required_ruby_version: !ruby/object:Gem::Requirement
203
154
  none: false
204
- requirements:
205
- - - ">="
206
- - !ruby/object:Gem::Version
207
- hash: 3
208
- segments:
155
+ requirements:
156
+ - - ! '>='
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ segments:
209
160
  - 0
210
- version: "0"
211
- required_rubygems_version: !ruby/object:Gem::Requirement
161
+ hash: 536810611
162
+ required_rubygems_version: !ruby/object:Gem::Requirement
212
163
  none: false
213
- requirements:
214
- - - ">="
215
- - !ruby/object:Gem::Version
216
- hash: 3
217
- segments:
218
- - 0
219
- version: "0"
164
+ requirements:
165
+ - - ! '>='
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
220
168
  requirements: []
221
-
222
169
  rubyforge_project:
223
- rubygems_version: 1.3.7
170
+ rubygems_version: 1.8.7
224
171
  signing_key:
225
172
  specification_version: 3
226
173
  summary: The ruby client for the phocoder.com API.
227
- test_files:
174
+ test_files:
228
175
  - spec/phocoder/http/net_http_spec.rb
229
176
  - spec/phocoder/http/typhoeus_spec.rb
230
177
  - spec/phocoder/http_spec.rb
data/Gemfile.lock DELETED
@@ -1,47 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- activesupport (3.0.0)
5
- addressable (2.2.2)
6
- autotest (4.4.4)
7
- builder (2.1.2)
8
- crack (0.1.8)
9
- diff-lcs (1.1.2)
10
- git (1.2.5)
11
- i18n (0.5.0)
12
- jeweler (1.5.1)
13
- bundler (~> 1.0.0)
14
- git (>= 1.2.5)
15
- rake
16
- mocha (0.9.10)
17
- rake
18
- rake (0.8.7)
19
- rcov (0.9.9)
20
- redgreen (1.2.2)
21
- rspec (2.1.0)
22
- rspec-core (~> 2.1.0)
23
- rspec-expectations (~> 2.1.0)
24
- rspec-mocks (~> 2.1.0)
25
- rspec-core (2.1.0)
26
- rspec-expectations (2.1.0)
27
- diff-lcs (~> 1.1.2)
28
- rspec-mocks (2.1.0)
29
- webmock (1.6.1)
30
- addressable (>= 2.2.2)
31
- crack (>= 0.1.7)
32
-
33
- PLATFORMS
34
- ruby
35
-
36
- DEPENDENCIES
37
- activesupport (~> 3.0.0)
38
- autotest (= 4.4.4)
39
- builder
40
- bundler (~> 1.0.0)
41
- i18n
42
- jeweler (~> 1.5.1)
43
- mocha
44
- rcov
45
- redgreen (= 1.2.2)
46
- rspec (~> 2.1.0)
47
- webmock (~> 1.6.0)