tddium_client 0.3.0 → 0.4.0

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.
@@ -1,47 +1,48 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tddium_client (0.2.0)
5
- httparty (>= 0.8.1)
4
+ tddium_client (0.4.0)
5
+ httpclient (>= 2.2.5)
6
6
  json
7
7
 
8
8
  GEM
9
9
  remote: http://rubygems.org/
10
10
  specs:
11
+ addressable (2.2.8)
12
+ crack (0.3.1)
11
13
  diff-lcs (1.1.3)
12
14
  fakefs (0.4.0)
13
- fakeweb (1.3.0)
14
- httparty (0.8.1)
15
- multi_json
16
- multi_xml
17
- json (1.6.1)
18
- multi_json (1.0.3)
19
- multi_xml (0.4.1)
20
- rack (1.3.5)
15
+ httpclient (2.2.5)
16
+ json (1.7.4)
17
+ multi_json (1.3.6)
18
+ rack (1.4.1)
21
19
  rack-test (0.6.1)
22
20
  rack (>= 1.0)
23
21
  rake (0.9.2.2)
24
- rspec (2.7.0)
25
- rspec-core (~> 2.7.0)
26
- rspec-expectations (~> 2.7.0)
27
- rspec-mocks (~> 2.7.0)
28
- rspec-core (2.7.1)
29
- rspec-expectations (2.7.0)
30
- diff-lcs (~> 1.1.2)
31
- rspec-mocks (2.7.0)
32
- simplecov (0.5.3)
33
- multi_json (~> 1.0.3)
22
+ rspec (2.11.0)
23
+ rspec-core (~> 2.11.0)
24
+ rspec-expectations (~> 2.11.0)
25
+ rspec-mocks (~> 2.11.0)
26
+ rspec-core (2.11.1)
27
+ rspec-expectations (2.11.2)
28
+ diff-lcs (~> 1.1.3)
29
+ rspec-mocks (2.11.2)
30
+ simplecov (0.6.4)
31
+ multi_json (~> 1.0)
34
32
  simplecov-html (~> 0.5.3)
35
33
  simplecov-html (0.5.3)
34
+ webmock (1.8.8)
35
+ addressable (~> 2.2.8)
36
+ crack (>= 0.1.7)
36
37
 
37
38
  PLATFORMS
38
39
  ruby
39
40
 
40
41
  DEPENDENCIES
41
42
  fakefs
42
- fakeweb
43
43
  rack-test
44
44
  rake
45
45
  rspec
46
46
  simplecov
47
47
  tddium_client!
48
+ webmock
@@ -1,14 +1,14 @@
1
1
  # Copyright (c) 2011, 2012 Solano Labs All Rights Reserved
2
2
 
3
3
  require 'rubygems'
4
- require 'httparty'
5
4
  require 'json'
5
+ require 'httpclient'
6
6
  require 'securerandom'
7
7
  require File.expand_path("../tddium_client/version", __FILE__)
8
8
 
9
9
  module TddiumClient
10
- API_KEY_HEADER = "X-tddium-api-key"
11
- CLIENT_VERSION_HEADER = "X-tddium-client-version"
10
+ API_KEY_HEADER = "X-Tddium-Api-Key"
11
+ CLIENT_VERSION_HEADER = "X-Tddium-Client-Version"
12
12
  API_ERROR_TEXT = "An error occured: "
13
13
 
14
14
  module Error
@@ -28,7 +28,8 @@ module TddiumClient
28
28
  end
29
29
 
30
30
  def http_message
31
- http_response.response.header.msg.to_s
31
+ v = http_response.header.send(:reason_phrase)
32
+ return v
32
33
  end
33
34
  end
34
35
 
@@ -102,11 +103,10 @@ module TddiumClient
102
103
  end
103
104
 
104
105
  class InternalClient
105
- include HTTParty
106
+ attr_reader :client
106
107
 
107
- format :json
108
-
109
- def initialize(host, port=nil, scheme='https', version=1, caller_version=nil)
108
+ def initialize(host, port=nil, scheme='https', version=1, caller_version=nil, options={})
109
+ @client = HTTPClient.new
110
110
  @tddium_config = {"host" => host,
111
111
  "port" => port,
112
112
  "scheme" => scheme,
@@ -125,9 +125,11 @@ module TddiumClient
125
125
  tries = 0
126
126
 
127
127
  begin
128
- http = self.class.send(method, tddium_uri(api_path), :body => call_params.to_json, :headers => headers)
128
+ http = @client.send(method, tddium_uri(api_path), :body => call_params.to_json, :header => headers)
129
129
  rescue Errno::ECONNREFUSED, Errno::ETIMEDOUT, Timeout::Error, OpenSSL::SSL::SSLError, OpenSSL::SSL::Session::SessionError
130
130
  tries += 1
131
+ delay = (tries>>1)*0.05*rand()
132
+ Kernel.sleep(delay)
131
133
  retry if retries > 0 && tries <= retries
132
134
  end
133
135
 
@@ -173,10 +175,12 @@ module TddiumClient
173
175
  class Client < InternalClient
174
176
  attr_reader :environment
175
177
 
176
- def initialize(env = :development, caller_version=nil)
178
+ def initialize(env = :development, caller_version=nil, options={})
177
179
  @all_config = YAML.load(File.read(config_path))
178
180
  self.environment = env.to_s
179
181
  self.caller_version = caller_version
182
+
183
+ super(host, port, scheme, version, caller_version, options)
180
184
  end
181
185
 
182
186
  def environment=(new_environment)
@@ -198,6 +202,14 @@ module TddiumClient
198
202
  @tddium_config["port"]
199
203
  end
200
204
 
205
+ def scheme
206
+ @tddium_config["scheme"]
207
+ end
208
+
209
+ def version
210
+ @tddium_config["version"]
211
+ end
212
+
201
213
  private
202
214
 
203
215
  def config_path
@@ -1,5 +1,5 @@
1
1
  # Copyright (c) 2011, 2012 Solano Labs All Rights Reserved
2
2
 
3
3
  module TddiumClient
4
- VERSION = "0.3.0"
4
+ VERSION = "0.4.0"
5
5
  end
@@ -6,13 +6,34 @@ require "simplecov"
6
6
  SimpleCov.start
7
7
  require "tddium_client"
8
8
  require "rspec"
9
- require "fakeweb"
10
9
  require "rack/test"
10
+ require "webmock/rspec"
11
11
  require "fakefs/spec_helpers"
12
12
  require "tddium_client/tddium_spec_helpers"
13
13
 
14
- FakeWeb.allow_net_connect = false
15
-
16
14
  def fixture_path(fixture_name)
17
15
  File.join File.dirname(__FILE__), "fixtures", fixture_name
18
16
  end
17
+
18
+ def fixture_data(fixture_name)
19
+ path = File.join File.dirname(__FILE__), "fixtures", fixture_name
20
+ FakeFS.deactivate!
21
+ data = File.read(path)
22
+ FakeFS.activate!
23
+ return data
24
+ end
25
+
26
+ module LastRequest
27
+ def last_request
28
+ @last_request
29
+ end
30
+
31
+ def last_request=(request_signature)
32
+ @last_request = request_signature
33
+ end
34
+ end
35
+
36
+ WebMock.extend(LastRequest)
37
+ WebMock.after_request do |request_signature, response|
38
+ WebMock.last_request = request_signature
39
+ end
@@ -22,16 +22,16 @@ describe "TddiumClient" do
22
22
  end
23
23
 
24
24
  def stub_http_message(message = "Unauthorized")
25
- http_response.stub_chain(:response, :header, :msg).and_return(message)
25
+ http_response.stub_chain(:header, :reason_phrase).and_return(message)
26
26
  end
27
27
 
28
28
  describe "Response" do
29
29
 
30
30
  shared_examples_for "base" do
31
31
  describe "#http_code" do
32
- before {stub_http_code("200")}
32
+ before {stub_http_code(200)}
33
33
  it "should return the http status code from the response" do
34
- base.http_code.should == "200"
34
+ base.http_code.should == 200
35
35
  end
36
36
  end
37
37
 
@@ -222,12 +222,12 @@ describe "TddiumClient" do
222
222
 
223
223
  def stub_http_response(method, path, options = {})
224
224
  uri = api_uri(path)
225
- FakeWeb.register_uri(method, uri, register_uri_options(options))
225
+ stub_request(method, uri).to_return(options)
226
226
  end
227
227
 
228
228
  def parse_request_params
229
229
  #Rack::Utils.parse_nested_query(FakeWeb.last_request.body)
230
- JSON.parse(FakeWeb.last_request.body)
230
+ JSON.parse(WebMock.last_request.body)
231
231
  end
232
232
 
233
233
  let(:tddium_client) { TddiumClient::Client.new }
@@ -263,32 +263,32 @@ describe "TddiumClient" do
263
263
 
264
264
  describe "#call_api" do
265
265
  before do
266
- FakeWeb.clean_registry
266
+ WebMock.reset!
267
267
  stub_tddium_client_config
268
- stub_http_response(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, :response => fixture_path("post_suites_201.json"))
268
+ stub_http_response(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, fixture_data("post_suites_201.json"))
269
269
  end
270
270
 
271
271
  context "('#{EXAMPLE_HTTP_METHOD}', '#{EXAMPLE_TDDIUM_RESOURCE}')" do
272
272
  it "should make a '#{EXAMPLE_HTTP_METHOD.to_s.upcase}' request to the api" do
273
273
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE)
274
- FakeWeb.last_request.method.downcase.to_sym.should == EXAMPLE_HTTP_METHOD
274
+ WebMock.last_request.method.downcase.to_sym.should == EXAMPLE_HTTP_METHOD
275
275
  end
276
276
 
277
277
  it "should make a request to the correct resource" do
278
278
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE)
279
- FakeWeb.last_request.path.should =~ /#{EXAMPLE_TDDIUM_RESOURCE}$/
279
+ WebMock.last_request.uri.path.should =~ /#{EXAMPLE_TDDIUM_RESOURCE}$/
280
280
  end
281
281
  end
282
282
 
283
283
  shared_examples_for "retry on exception" do
284
- before { TddiumClient::InternalClient.stub(EXAMPLE_HTTP_METHOD).and_raise(raised_exception) }
284
+ before { tddium_client.client.stub(EXAMPLE_HTTP_METHOD).and_raise(raised_exception) }
285
285
  it "should retry 5 times by default to contact the API" do
286
- TddiumClient::InternalClient.should_receive(EXAMPLE_HTTP_METHOD).exactly(6).times
286
+ tddium_client.client.should_receive(EXAMPLE_HTTP_METHOD).exactly(6).times
287
287
  expect { tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE) }.to raise_error(TddiumClient::Error::Timeout)
288
288
  end
289
289
 
290
290
  it "should retry as many times as we want to contact the API" do
291
- TddiumClient::InternalClient.should_receive(EXAMPLE_HTTP_METHOD).exactly(3).times
291
+ tddium_client.client.should_receive(EXAMPLE_HTTP_METHOD).exactly(3).times
292
292
  expect { tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, {}, nil, 2) }.to raise_error(TddiumClient::Error::Timeout)
293
293
  end
294
294
  end
@@ -314,16 +314,16 @@ describe "TddiumClient" do
314
314
  context "('#{EXAMPLE_HTTP_METHOD}', '#{EXAMPLE_TDDIUM_RESOURCE}', {}, #{EXAMPLE_API_KEY}) # with api_key" do
315
315
  it "should include #{TddiumClient::API_KEY_HEADER}=#{EXAMPLE_API_KEY} in the request headers" do
316
316
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, {}, EXAMPLE_API_KEY)
317
- FakeWeb.last_request[TddiumClient::API_KEY_HEADER].should == EXAMPLE_API_KEY
318
- FakeWeb.last_request[TddiumClient::CLIENT_VERSION_HEADER].should =~ /#{TddiumClient::VERSION}/
317
+ WebMock.last_request.headers[TddiumClient::API_KEY_HEADER].should == EXAMPLE_API_KEY
318
+ WebMock.last_request.headers[TddiumClient::CLIENT_VERSION_HEADER].should =~ /#{TddiumClient::VERSION}/
319
319
  end
320
320
  end
321
321
 
322
322
  context "('#{EXAMPLE_HTTP_METHOD}', '#{EXAMPLE_TDDIUM_RESOURCE}') # without api_key" do
323
323
  it "should not include #{TddiumClient::API_KEY_HEADER} in the request headers" do
324
324
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, {})
325
- FakeWeb.last_request[TddiumClient::API_KEY_HEADER].should be_nil
326
- FakeWeb.last_request[TddiumClient::CLIENT_VERSION_HEADER].should =~ /#{TddiumClient::VERSION}/
325
+ WebMock.last_request.headers[TddiumClient::API_KEY_HEADER].should be_nil
326
+ WebMock.last_request.headers[TddiumClient::CLIENT_VERSION_HEADER].should =~ /#{TddiumClient::VERSION}/
327
327
  end
328
328
  end
329
329
 
@@ -332,8 +332,8 @@ describe "TddiumClient" do
332
332
  ver = "tddium-preview-0.8.1"
333
333
  tddium_client.caller_version = ver
334
334
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, {})
335
- FakeWeb.last_request[TddiumClient::API_KEY_HEADER].should be_nil
336
- FakeWeb.last_request[TddiumClient::CLIENT_VERSION_HEADER].should =~ /#{TddiumClient::VERSION};#{ver}/
335
+ WebMock.last_request.headers[TddiumClient::API_KEY_HEADER].should be_nil
336
+ WebMock.last_request.headers[TddiumClient::CLIENT_VERSION_HEADER].should =~ /#{TddiumClient::VERSION};#{ver}/
337
337
  end
338
338
  end
339
339
 
@@ -348,19 +348,19 @@ describe "TddiumClient" do
348
348
  it "should not include any request params" do
349
349
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE)
350
350
  params = parse_request_params
351
- params.member?('xid').should be_true
352
- params.delete('xid')
353
- params.should == {}
351
+ params.member?('xid').should be_true
352
+ params.delete('xid')
353
+ params.should == {}
354
354
  end
355
355
  end
356
356
 
357
357
  context "results in a successful response" do
358
358
  before do
359
- stub_http_response(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, :response => fixture_path("post_suites_201.json"))
359
+ stub_http_response(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, fixture_data("post_suites_201.json"))
360
360
  end
361
361
 
362
362
  it "should try to contact the api only once" do
363
- TddiumClient::InternalClient.should_receive(EXAMPLE_HTTP_METHOD).exactly(1).times.and_return(mock(HTTParty).as_null_object)
363
+ tddium_client.client.should_receive(EXAMPLE_HTTP_METHOD).exactly(1).times.and_return(mock(HTTPClient).as_null_object)
364
364
  tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, {}, nil) rescue {}
365
365
  end
366
366
 
@@ -386,7 +386,7 @@ describe "TddiumClient" do
386
386
  end
387
387
 
388
388
  context "where the http request was successful but API status is not 0" do
389
- before { stub_http_response(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, :response => fixture_path("post_suites_269_json_status_1.json")) }
389
+ before { stub_http_response(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE, fixture_data("post_suites_269_json_status_1.json")) }
390
390
 
391
391
  it "should raise a TddiumClient::Error::API Error" do
392
392
  expect { tddium_client.call_api(EXAMPLE_HTTP_METHOD, EXAMPLE_TDDIUM_RESOURCE) }.to raise_error(TddiumClient::Error::API)
@@ -23,11 +23,11 @@ Gem::Specification.new do |s|
23
23
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
24
24
  s.require_paths = ["lib"]
25
25
 
26
- s.add_runtime_dependency("httparty", ">= 0.8.1")
26
+ s.add_runtime_dependency("httpclient", ">= 2.2.5")
27
27
  s.add_runtime_dependency("json")
28
28
 
29
29
  s.add_development_dependency("rspec")
30
- s.add_development_dependency("fakeweb")
30
+ s.add_development_dependency("webmock")
31
31
  s.add_development_dependency("fakefs")
32
32
  s.add_development_dependency("rack-test")
33
33
  s.add_development_dependency("simplecov")
metadata CHANGED
@@ -1,115 +1,151 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: tddium_client
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.0
4
5
  prerelease:
5
- version: 0.3.0
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Jay Moorthi
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2012-06-11 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: httparty
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
12
+ date: 2012-08-14 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: httpclient
16
+ requirement: !ruby/object:Gem::Requirement
19
17
  none: false
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: 0.8.1
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 2.2.5
24
22
  type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: json
28
23
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 2.2.5
30
+ - !ruby/object:Gem::Dependency
31
+ name: json
32
+ requirement: !ruby/object:Gem::Requirement
30
33
  none: false
31
- requirements:
32
- - - ">="
33
- - !ruby/object:Gem::Version
34
- version: "0"
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
35
38
  type: :runtime
36
- version_requirements: *id002
37
- - !ruby/object:Gem::Dependency
38
- name: rspec
39
39
  prerelease: false
40
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- version: "0"
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: rspec
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
46
54
  type: :development
47
- version_requirements: *id003
48
- - !ruby/object:Gem::Dependency
49
- name: fakeweb
50
55
  prerelease: false
51
- requirement: &id004 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: webmock
64
+ requirement: !ruby/object:Gem::Requirement
52
65
  none: false
53
- requirements:
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: "0"
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
57
70
  type: :development
58
- version_requirements: *id004
59
- - !ruby/object:Gem::Dependency
60
- name: fakefs
61
71
  prerelease: false
62
- requirement: &id005 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: fakefs
80
+ requirement: !ruby/object:Gem::Requirement
63
81
  none: false
64
- requirements:
65
- - - ">="
66
- - !ruby/object:Gem::Version
67
- version: "0"
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
68
86
  type: :development
69
- version_requirements: *id005
70
- - !ruby/object:Gem::Dependency
71
- name: rack-test
72
87
  prerelease: false
73
- requirement: &id006 !ruby/object:Gem::Requirement
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: rack-test
96
+ requirement: !ruby/object:Gem::Requirement
74
97
  none: false
75
- requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- version: "0"
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
79
102
  type: :development
80
- version_requirements: *id006
81
- - !ruby/object:Gem::Dependency
82
- name: simplecov
83
103
  prerelease: false
84
- requirement: &id007 !ruby/object:Gem::Requirement
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: simplecov
112
+ requirement: !ruby/object:Gem::Requirement
85
113
  none: false
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: "0"
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
90
118
  type: :development
91
- version_requirements: *id007
92
- - !ruby/object:Gem::Dependency
93
- name: rake
94
119
  prerelease: false
95
- requirement: &id008 !ruby/object:Gem::Requirement
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: rake
128
+ requirement: !ruby/object:Gem::Requirement
96
129
  none: false
97
- requirements:
98
- - - ">="
99
- - !ruby/object:Gem::Version
100
- version: "0"
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
101
134
  type: :development
102
- version_requirements: *id008
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
103
142
  description: Internal Gem used to call the Tddium API
104
- email:
143
+ email:
105
144
  - info@tddium.com
106
145
  executables: []
107
-
108
146
  extensions: []
109
-
110
147
  extra_rdoc_files: []
111
-
112
- files:
148
+ files:
113
149
  - .gitignore
114
150
  - .rspec
115
151
  - Gemfile
@@ -129,30 +165,26 @@ files:
129
165
  - tddium_client.gemspec
130
166
  homepage: http://www.tddium.com/
131
167
  licenses: []
132
-
133
168
  post_install_message:
134
169
  rdoc_options: []
135
-
136
- require_paths:
170
+ require_paths:
137
171
  - lib
138
- required_ruby_version: !ruby/object:Gem::Requirement
172
+ required_ruby_version: !ruby/object:Gem::Requirement
139
173
  none: false
140
- requirements:
141
- - - ">="
142
- - !ruby/object:Gem::Version
143
- version: "0"
144
- required_rubygems_version: !ruby/object:Gem::Requirement
174
+ requirements:
175
+ - - ! '>='
176
+ - !ruby/object:Gem::Version
177
+ version: '0'
178
+ required_rubygems_version: !ruby/object:Gem::Requirement
145
179
  none: false
146
- requirements:
147
- - - ">="
148
- - !ruby/object:Gem::Version
149
- version: "0"
180
+ requirements:
181
+ - - ! '>='
182
+ - !ruby/object:Gem::Version
183
+ version: '0'
150
184
  requirements: []
151
-
152
185
  rubyforge_project: tddium_client
153
186
  rubygems_version: 1.8.24
154
187
  signing_key:
155
188
  specification_version: 3
156
189
  summary: tddium Client Gem
157
190
  test_files: []
158
-