midwife-client 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  module Midwife
2
2
  class Client
3
- VERSION = "0.0.3"
3
+ VERSION = "0.0.4"
4
4
  end
5
5
  end
@@ -1,6 +1,7 @@
1
1
  require "net/http"
2
2
  require "uri"
3
3
  require "json"
4
+ require 'excon'
4
5
 
5
6
  module Midwife
6
7
  class RequestError < StandardError
@@ -15,17 +16,9 @@ module Midwife
15
16
  private
16
17
 
17
18
  def request(path, attributes)
18
- uri = URI.parse(@endpoint + path)
19
+ response = Excon.post(@endpoint + path, :query => attributes)
19
20
 
20
- request = Net::HTTP::Post.new(uri.path)
21
- request["content-type"] = "application/json"
22
- request.body = attributes.to_json
23
-
24
- response = Net::HTTP.start(uri.host, uri.port) { |http|
25
- http.request(request)
26
- }
27
-
28
- if response.code =~ /2../
21
+ if response.status.to_s =~ /2../
29
22
  JSON.parse(response.body)
30
23
  else
31
24
  raise RequestError.new(response)
@@ -20,6 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.require_paths = ["lib"]
21
21
 
22
22
  s.add_dependency 'json'
23
+ s.add_dependency 'excon', '~> 0.6.3'
23
24
 
24
25
  s.add_development_dependency 'rspec', '~> 2.5'
25
26
  end
data/spec/client_spec.rb CHANGED
@@ -124,11 +124,11 @@ describe Midwife::Client do
124
124
 
125
125
  context 'when processing a non-success response' do
126
126
  let(:client) { Midwife::Client.new }
127
- let(:response) { double(:code => '404') }
127
+ let(:response) { double(:status => 404) }
128
128
 
129
129
 
130
130
  before do
131
- Net::HTTP.stub(:start).and_return(response)
131
+ Excon.stub!(:post).and_return(response)
132
132
  end
133
133
 
134
134
  it 'raises an exception' do
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: midwife-client
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
5
- prerelease: false
4
+ hash: 23
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 3
10
- version: 0.0.3
9
+ - 4
10
+ version: 0.0.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Michael Guterl
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-20 00:00:00 -04:00
18
+ date: 2011-05-23 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -33,9 +33,25 @@ dependencies:
33
33
  type: :runtime
34
34
  version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
36
- name: rspec
36
+ name: excon
37
37
  prerelease: false
38
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ hash: 1
44
+ segments:
45
+ - 0
46
+ - 6
47
+ - 3
48
+ version: 0.6.3
49
+ type: :runtime
50
+ version_requirements: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ name: rspec
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
39
55
  none: false
40
56
  requirements:
41
57
  - - ~>
@@ -46,7 +62,7 @@ dependencies:
46
62
  - 5
47
63
  version: "2.5"
48
64
  type: :development
49
- version_requirements: *id002
65
+ version_requirements: *id003
50
66
  description: A ruby wrapper for the Midwife HTTP API
51
67
  email:
52
68
  - mguterl@gmail.com
@@ -97,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
97
113
  requirements: []
98
114
 
99
115
  rubyforge_project: midwife-client
100
- rubygems_version: 1.3.7
116
+ rubygems_version: 1.6.2
101
117
  signing_key:
102
118
  specification_version: 3
103
119
  summary: A ruby wrapper for the Midwife HTTP API