wizypay-api-client 0.2.3 → 0.2.4

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: 4bca630ae75a36db5e41f3cb75ee501d9cf14add
4
- data.tar.gz: bf3964e81428eba7194195083f42cfffadfc746d
3
+ metadata.gz: d05e8bd0ce798db5329ff037d26d6098503693dc
4
+ data.tar.gz: 9bca7271f7dbb98a69d57107bfd33887f469188d
5
5
  SHA512:
6
- metadata.gz: df0f6ab6adfb7f945e6abccc97d484489b5f8299f67a84b910a3d2c9d8b5545679b5cd01caf0b3f447f7560362e83577335e7a3195ae62322c07d11fd5c1686b
7
- data.tar.gz: 61306abd6fde64bffb67a71fecded4ec07ac6a578a5cb788a2f30ac9275e5741e025afd972b8380faa6d7b71327a1aeb86c6c437078340d8c46c1a4caeb4b0ef
6
+ metadata.gz: 1f1b39a524e6fe4e96a30d081190934c8e3e85d4a6433c96a862d1032f2256eeb03a02823ef2fa2691686c7f9e359caad2e5a570a3d22da6809b55cbe414c35a
7
+ data.tar.gz: 5118035e2bb3e4c88d2d08f8295a7f2f350ddfc0f60433a61832b706d44e17deeb2bb0118f9d339e9e6c5dbe1b7300cfcaa692d3965b878750c14ffc3eaec56e
data/lib/wizypay/card.rb CHANGED
@@ -26,6 +26,10 @@ module Wizypay
26
26
  new(reference: reference).cancel
27
27
  end
28
28
 
29
+ def self.refund(reference, amount)
30
+ new(reference: reference).refund(amount)
31
+ end
32
+
29
33
  def self.url(reference)
30
34
  new(reference: reference).url
31
35
  end
@@ -34,6 +38,10 @@ module Wizypay
34
38
  Client.post("/cards/#{URI::encode_www_form_component reference}/cancel")
35
39
  end
36
40
 
41
+ def refund(amount)
42
+ Client.post("/cards/#{URI::encode_www_form_component reference}/refund", amount: amount)
43
+ end
44
+
37
45
  def url
38
46
  timestamp = Time.now.utc.httpdate
39
47
  security = sign_string("#{reference}\n#{timestamp}", Client.api_secret)
@@ -1,3 +1,3 @@
1
1
  module Wizypay
2
- VERSION = '0.2.3'
2
+ VERSION = '0.2.4'
3
3
  end
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+
3
+ module Wizypay
4
+ RSpec.describe 'Card#refun' do
5
+
6
+ let(:api_key) { 'key' }
7
+ let(:api_secret) { 'secret' }
8
+ let(:api_endpoint) { 'https://api.wizypay.com' }
9
+ let(:reference) { '85fb584c-72cb-4f35-b307-ac5442ef7153' }
10
+ let(:amount) { 2000 }
11
+ let(:refund_request) { stub_request(:post, "#{api_endpoint}/cards/#{reference}/refund").
12
+ with(body: { 'amount' => amount.to_s },
13
+ headers: { 'Accept' => 'application/json',
14
+ 'Authorization' => /WIZYPAY #{api_key}:.*/,
15
+ 'Content-Type' => 'application/x-www-form-urlencoded' }) }
16
+ before do
17
+ Wizypay.setup(api_key, api_secret, api_endpoint)
18
+ end
19
+
20
+ context 'success' do
21
+ it 'returns empty body' do
22
+ request = refund_request.to_return(status: 200, body: '')
23
+ response = Card.new(reference: reference).refund(amount)
24
+ expect(request).to have_been_made
25
+ expect(response).to be_empty
26
+ end
27
+ end
28
+
29
+ describe '.refund' do
30
+ it 'delegates to an instance' do
31
+ expect(Card).to receive(:new).with(reference: reference).and_return(card = double('card'))
32
+ expect(card).to receive(:refund).with(amount)
33
+ Card.refund(reference, amount)
34
+ end
35
+ end
36
+ end
37
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wizypay-api-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chaker Nakhli
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-02-01 00:00:00.000000000 Z
13
+ date: 2016-02-02 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: simple-hmac
@@ -166,6 +166,7 @@ files:
166
166
  - spec/card/card_show_spec.rb
167
167
  - spec/card/card_url_spec.rb
168
168
  - spec/card/create_card_spec.rb
169
+ - spec/card/refund_card_spec.rb
169
170
  - spec/merchant/merchant_spec.rb
170
171
  - spec/merchant_category/merchant_category_spec.rb
171
172
  - spec/merchant_version/merchant_version_spec.rb
@@ -201,6 +202,7 @@ test_files:
201
202
  - spec/card/card_show_spec.rb
202
203
  - spec/card/card_url_spec.rb
203
204
  - spec/card/create_card_spec.rb
205
+ - spec/card/refund_card_spec.rb
204
206
  - spec/merchant/merchant_spec.rb
205
207
  - spec/merchant_category/merchant_category_spec.rb
206
208
  - spec/merchant_version/merchant_version_spec.rb