wp-hmac 0.0.1 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cf1d6de791dc384d8d18884a533f1880c958a6a1
4
- data.tar.gz: b133c48a1c83199ac676619288ff35d4d603507a
3
+ metadata.gz: 803b79ca1b59726cc4c853a13831d65f4e2a63e7
4
+ data.tar.gz: 0107c029b7d51c9a6272fef49557b5d360ff536f
5
5
  SHA512:
6
- metadata.gz: 7397578368f49eb3e0f8de78044b0c05f1b7398eb6d8b4314b2dfa29f714b7388747eb906a2eb4235c52cf30f5ed9fcef83b439fbce8a3b3f812b6f6885dc851
7
- data.tar.gz: e16bf36a546695951d9dc532cbd09392321efbdfa403513f8980f0e8c0b04a62f7c748c8113170b0ca12319791ac82601eff16b97c2d1b82224740ac53093872
6
+ metadata.gz: b839d3bf6dd843dff393a606058b7b28b51b0b8f207f4ac7397fd1b452e5e9958421283aba15e70bcd7c41be7e79a0b6faec2e54c1f33a6d7a9fa0ce1c71b061
7
+ data.tar.gz: c8b94d52230bfea5d18aea7409532e24e5a43ef1eaa089ee712b7ba16e1a3ffa67e13edb027bd103c8122c260690e0403fff2d76d37d6f9297e41a715ab0c85e
data/README.md CHANGED
@@ -63,12 +63,12 @@ use WP::HMAC::Server
63
63
 
64
64
  Use like this ...
65
65
  ``` ruby
66
- HMAC::Client.get('https://www.example.com/api/staff')
67
- HMAC::Client.post('https://www.example.com/api/schedules, {'HEADER' => 'foo'}, StringIO.new('data'))
66
+ WP::HMAC::Client.get('https://www.example.com/api/staff')
67
+ WP::HMAC::Client.post('https://www.example.com/api/schedules, {'HEADER' => 'foo'}, StringIO.new('data'))
68
68
  ```
69
69
  ... or like this:
70
70
  ``` ruby
71
- client = HMAC::Client.new('https://www.example.com')
71
+ client = WP::HMAC::Client.new('https://www.example.com')
72
72
  client.get('api/staff')
73
73
  client.post('api/schedules', {}, StringIO.new('data'))
74
74
  ```
@@ -1,6 +1,8 @@
1
1
  module WP
2
2
  module HMAC
3
3
  class Client
4
+ class UnsuccessfulResponse < StandardError; end
5
+
4
6
  def initialize(url = nil, app = Rack::Client::Handler::NetHTTP)
5
7
  build_rack_client(url, app)
6
8
  end
@@ -11,7 +13,7 @@ module WP
11
13
 
12
14
  @client = Rack::Client.new(url) do
13
15
  use Rack::Config do |env|
14
- env['HTTP_DATE'] = Time.zone.now.httpdate
16
+ env['HTTP_DATE'] = Time.now.httpdate
15
17
  end
16
18
  use EY::ApiHMAC::ApiAuth::Client, id, auth_key
17
19
  run app
@@ -32,6 +34,8 @@ module WP
32
34
  define_method(method) do |*args|
33
35
  client = Client.new
34
36
  client.send(method, *args)
37
+
38
+ raise UnsuccessfulResponse unless /2\d\d/.match("#{client.status}")
35
39
  end
36
40
  end
37
41
  end
@@ -1,5 +1,5 @@
1
1
  module Wp
2
2
  module Hmac
3
- VERSION = "0.0.1"
3
+ VERSION = "0.1.1"
4
4
  end
5
5
  end
data/spec/hmac_spec.rb CHANGED
@@ -69,7 +69,7 @@ RSpec.describe WP::HMAC, type: :request do
69
69
 
70
70
  it 'fails when a request is signed with a duff hash' do
71
71
  header 'Authorization', 'AuthHMAC esso:1234'
72
- header 'Date', Time.zone.now.httpdate
72
+ header 'Date', Time.now.httpdate
73
73
  get 'http://esso.example.org/dummy/1'
74
74
  expect(last_response.body).to include('Authentication failure: signature mismatch')
75
75
  end
data/wp-hmac.gemspec CHANGED
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
24
24
  spec.add_development_dependency "rake", "~> 10.0"
25
25
  spec.add_development_dependency "rails", "4.1.4"
26
26
  spec.add_development_dependency "rspec", "~> 3.0"
27
+ spec.add_development_dependency "fuubar", "~> 2.0"
27
28
  spec.add_development_dependency "pry"
28
29
  spec.add_development_dependency "sqlite3"
29
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wp-hmac
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Nagi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-09 00:00:00.000000000 Z
11
+ date: 2015-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ey_api_hmac
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '3.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: fuubar
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: pry
85
99
  requirement: !ruby/object:Gem::Requirement