bitpay-client 0.1.4 → 0.1.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 58908ccf542a4fde0d28f13ccd59c9aae77b4916
4
- data.tar.gz: b50be1b001ab2a3a8cbf9e72619051e385855531
3
+ metadata.gz: 439da2df3cd970909db7dc7adf7591f1a689935a
4
+ data.tar.gz: 3d41a7739c173d85c865eadcd75d9516f168cfd0
5
5
  SHA512:
6
- metadata.gz: 07d7b3a8ff9dd4d6fe2a1d78dbf2f96a32268b22801498e6d08908cd0d6d09c575bae3619312663b7add7bff569c1dcf747debc7572b93d5f3389efcee14dcd5
7
- data.tar.gz: f6a7251e498a226f9e7d4f686ebb067b55a043c51a871c70db2aa4be15e81a43d56982a14c2de667c491f41ffb0bb3cb03dd4c1d5b80d4d979fe4369d3a7b2a8
6
+ metadata.gz: d045eedd20a55ccca430e50554c838c317f19ad2213c92244836b9c905cbd94eb9cead436f4acf92f5bf0a82bdc0e25fa04415fdc4818a3072eb2cab44b484db
7
+ data.tar.gz: c898022563684a77ff956fde35a3424aec50db41b59b63c3c5cdde3dd8280ba5e30dee21f43983c07b909c4f21ea6ed5c7996f782e690671a712e71c74f22c71
data/lib/bitpay/client.rb CHANGED
@@ -54,6 +54,7 @@ module BitPay
54
54
  def request(request_klass, path, params=nil)
55
55
  request = make_request(request_klass, path, params)
56
56
  response = @https.request(request)
57
+ raise BitPayError, "HTTP Status " + response.code + " with body: " + response.body unless response.kind_of?(Net::HTTPSuccess)
57
58
  return JSON.parse(response.body)
58
59
  rescue => e
59
60
  fail BitPayError, "Bitpay Request Error: #{e}"
@@ -1,3 +1,3 @@
1
1
  module BitPay
2
- VERSION = '0.1.4'
2
+ VERSION = '0.1.5'
3
3
  end
@@ -20,6 +20,10 @@ def invoice_response_body
20
20
  }
21
21
  end
22
22
 
23
+ def unauthorized_key_body
24
+ {"error" => {"type" => "unauthorized", "message" => "invalid api key"}}
25
+ end
26
+
23
27
  stub_request(:post, "https://KEY:@bitpay.com/api/invoice/create").
24
28
  with(
25
29
  :headers => {'User-Agent'=>USER_AGENT, 'Content-Type' => 'application/json'},
@@ -31,6 +35,10 @@ stub_request(:get, "https://KEY:@bitpay.com/api/invoice/DGrAEmbsXe9bavBPMJ8kuk")
31
35
  with(:headers => {'User-Agent'=>USER_AGENT}).
32
36
  to_return(:body => invoice_response_body.to_json)
33
37
 
38
+ stub_request(:get, "https://KEY:@bitpay.com/api/invoice/BADAPIKEY").
39
+ with(:headers => {'User-Agent'=>USER_AGENT}).
40
+ to_return(:status => 403, :body => unauthorized_key_body.to_json)
41
+
34
42
  describe BitPay::Client do
35
43
  before do
36
44
  @client = BitPay::Client.new 'KEY'
@@ -51,4 +59,12 @@ describe BitPay::Client do
51
59
  response['id'].must_equal 'DGrAEmbsXe9bavBPMJ8kuk'
52
60
  end
53
61
  end
62
+
63
+ describe 'bad API Key' do
64
+ it 'returns Error' do
65
+ assert_raises(BitPay::Client::BitPayError) {
66
+ response = @client.get 'invoice/BADAPIKEY'
67
+ }
68
+ end
69
+ end
54
70
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bitpay-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bitpay, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-08 00:00:00.000000000 Z
11
+ date: 2014-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json