vsafe-ruby 0.2.4 → 0.2.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 +4 -4
- data/README.md +19 -0
- data/lib/vsafe/client.rb +6 -1
- data/lib/vsafe/responses/get_payment_status.rb +13 -0
- data/lib/vsafe/version.rb +1 -1
- data/spec/vsafe/client_spec.rb +10 -0
- data/spec/vsafe/responses/get_payment_status_spec.rb +24 -0
- data/spec/vsafe/responses/get_session_tags_spec.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: caa939a1fa93c52046ee1d940802c9c007c9d98e
|
4
|
+
data.tar.gz: abf8c9a62b94fee0bc7bd6f7a6f13a89f26be136
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3845e7932d099f3433ad53df820a91ec55230eba1f2202c3f9d9986ef48be3125a70cf627b85a9b5797dd1e5203ac47db044ef95e3ac725681674752457d6312
|
7
|
+
data.tar.gz: 88f88efb61a1ecd1a34b81ad1b99d704fb42bfb3cff42cce4115b2114766d5025a0f1f776819af794bfc57c33d686b7ad1faa5e12ac9b192359ae42a62a744d4
|
data/README.md
CHANGED
@@ -224,6 +224,25 @@ response.payment_id
|
|
224
224
|
response.payment_status
|
225
225
|
```
|
226
226
|
|
227
|
+
##### Get Payment Status
|
228
|
+
|
229
|
+
Get the payment status by the partner transaction ID or Vesta Payment ID.
|
230
|
+
|
231
|
+
```ruby
|
232
|
+
params = {
|
233
|
+
PartnerTransactionID: '333c1b85-c5db-4648-a946-ba408582fc1c'
|
234
|
+
}
|
235
|
+
response = client.get_payment_status(params) # => #<VSafe::Responses::GetPaymentStatus ...>
|
236
|
+
|
237
|
+
# Response attributes
|
238
|
+
response.amount
|
239
|
+
response.payment_id
|
240
|
+
response.payment_status
|
241
|
+
response.response_code
|
242
|
+
response.transaction_id
|
243
|
+
```
|
244
|
+
|
245
|
+
Note: If transaction does not exist on Vesta, result of `response.success?` will be false.
|
227
246
|
|
228
247
|
## Contributing
|
229
248
|
|
data/lib/vsafe/client.rb
CHANGED
@@ -8,6 +8,7 @@ require "vsafe/responses/reverse_payment"
|
|
8
8
|
require "vsafe/responses/charge_account_to_temporary_token"
|
9
9
|
require "vsafe/responses/charge_sale"
|
10
10
|
require "vsafe/responses/validate_charge_account"
|
11
|
+
require "vsafe/responses/get_payment_status"
|
11
12
|
require "securerandom"
|
12
13
|
require "uri"
|
13
14
|
|
@@ -58,6 +59,10 @@ module VSafe
|
|
58
59
|
VSafe::Responses::ValidateChargeAccount.new(request(service_url("ValidateChargeAccount"), params))
|
59
60
|
end
|
60
61
|
|
62
|
+
def get_payment_status(params)
|
63
|
+
VSafe::Responses::GetPaymentStatus.new(request(service_url("GetPaymentStatus"), params))
|
64
|
+
end
|
65
|
+
|
61
66
|
def service_url(endpoint = nil, jsonp = false)
|
62
67
|
base_uri = jsonp ? config.jsonp_url : config.url
|
63
68
|
endpoint.nil? ? base_uri : File.join(base_uri, endpoint)
|
@@ -89,7 +94,7 @@ module VSafe
|
|
89
94
|
options[:ssl_version] = :TLSv1
|
90
95
|
end
|
91
96
|
|
92
|
-
|
97
|
+
HTTParty.post(url, options)
|
93
98
|
end
|
94
99
|
end
|
95
100
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require "vsafe/response"
|
2
|
+
|
3
|
+
module VSafe
|
4
|
+
module Responses
|
5
|
+
class GetPaymentStatus < Response
|
6
|
+
define_attribute_mapping(:amount, "Amount")
|
7
|
+
define_attribute_mapping(:payment_id, "PaymentID")
|
8
|
+
define_attribute_mapping(:payment_status, "PaymentStatus", PaymentStatus)
|
9
|
+
define_attribute_mapping(:response_code, "ResponseCode")
|
10
|
+
define_attribute_mapping(:transaction_id, "TransactionID")
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/vsafe/version.rb
CHANGED
data/spec/vsafe/client_spec.rb
CHANGED
@@ -130,6 +130,16 @@ RSpec.describe VSafe::Client do
|
|
130
130
|
end
|
131
131
|
end
|
132
132
|
|
133
|
+
describe "#get_payment_status" do
|
134
|
+
it "returns response" do
|
135
|
+
stub_vsafe_request("GetPaymentStatus")
|
136
|
+
response = client.get_payment_status(params)
|
137
|
+
|
138
|
+
expect(response).to be_a(VSafe::Responses::GetPaymentStatus)
|
139
|
+
expect(response).to be_success
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
133
143
|
describe "#service_url" do
|
134
144
|
shared_examples_for "returns url" do |jsonp|
|
135
145
|
context "when endpoint defined" do
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
require "vsafe/responses/get_session_tags"
|
3
|
+
|
4
|
+
RSpec.describe VSafe::Responses::GetPaymentStatus do
|
5
|
+
let(:success_body) {
|
6
|
+
{
|
7
|
+
"ResponseCode" => "0",
|
8
|
+
"Amount" => "5.0000",
|
9
|
+
"PaymentID" => "1234",
|
10
|
+
"PaymentStatus" => "3",
|
11
|
+
"TransactionID" => "23",
|
12
|
+
}
|
13
|
+
}
|
14
|
+
let(:http_response) { double(:response, success?: true, parsed_response: success_body) }
|
15
|
+
subject(:response) { VSafe::Responses::GetPaymentStatus.new(http_response) }
|
16
|
+
|
17
|
+
it { is_expected.to have_attributes(response_code: '0') }
|
18
|
+
it { is_expected.to have_attributes(amount: '5.0000') }
|
19
|
+
it { is_expected.to have_attributes(payment_id: '1234') }
|
20
|
+
it { is_expected.to have_attributes(transaction_id: '23') }
|
21
|
+
it 'should have correct payment status code' do
|
22
|
+
expect(response.payment_status.code).to eq(3)
|
23
|
+
end
|
24
|
+
end
|
@@ -7,7 +7,7 @@ RSpec.describe VSafe::Responses::GetSessionTags do
|
|
7
7
|
let(:success_body) {
|
8
8
|
{
|
9
9
|
"OrgID" => org_id,
|
10
|
-
"WebSessionID" =>
|
10
|
+
"WebSessionID" => web_session_id
|
11
11
|
}
|
12
12
|
}
|
13
13
|
let(:http_response) { double(:response, success?: true, parsed_response: success_body) }
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vsafe-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Xiaoming Lu
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date: 2017-
|
13
|
+
date: 2017-08-30 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: httparty
|
@@ -124,6 +124,7 @@ files:
|
|
124
124
|
- lib/vsafe/responses/charge_authorize.rb
|
125
125
|
- lib/vsafe/responses/charge_confirm.rb
|
126
126
|
- lib/vsafe/responses/charge_sale.rb
|
127
|
+
- lib/vsafe/responses/get_payment_status.rb
|
127
128
|
- lib/vsafe/responses/get_session_tags.rb
|
128
129
|
- lib/vsafe/responses/reverse_payment.rb
|
129
130
|
- lib/vsafe/responses/validate_charge_account.rb
|
@@ -144,6 +145,7 @@ files:
|
|
144
145
|
- spec/vsafe/responses/charge_authorize_spec.rb
|
145
146
|
- spec/vsafe/responses/charge_confirm_spec.rb
|
146
147
|
- spec/vsafe/responses/charge_sale_spec.rb
|
148
|
+
- spec/vsafe/responses/get_payment_status_spec.rb
|
147
149
|
- spec/vsafe/responses/get_session_tags_spec.rb
|
148
150
|
- spec/vsafe/responses/reverse_payment_spec.rb
|
149
151
|
- spec/vsafe/responses/validate_charge_account.rb
|