omise 0.7.2 → 0.8.0

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
  SHA256:
3
- metadata.gz: 00566ef5178f9d2d92d9f99990c4903cb59ee5cc3776476299105bf8a897437a
4
- data.tar.gz: 2e429866a5852c4b7f9b4470273fd745060b83c05394c6bc5a0361a639a4f6da
3
+ metadata.gz: 9abe1a4a8a9399c57f4e58786fce81fd2ed38f2ddeead5ff9627a31e60aa914b
4
+ data.tar.gz: bb8a391d081182e8137d2f6d946dbb7addd455f2f474fe09ed841c8f5fcaa570
5
5
  SHA512:
6
- metadata.gz: ec84c552dd74d02701b88ecf6df17c667ce5de8a6296d566c27f37a70610d874b52404636aef447583447b1204fc1561724709137b9873a5717fd3d71d931126
7
- data.tar.gz: 421301f65eff228dd5ef3484aa8243bdaa1a44f04129378dff7a0bd286467f0e756943694580979035a24e129d6e71c0685f94998fc36298d2b91d0459e25206
6
+ metadata.gz: 943b4939ec9f1921d9b82f321d09de30b74ac7c0e8280b6db1574898850809a67d320756102b73ed9d8733f1cf1957eccbc5595bf088d15481ac238e396bd90d
7
+ data.tar.gz: 30a76786b30c05720a989d88e35063f6ea88a4fa1c79ed6de95b66f978ab7da0898bb993ab9f199f3a2ad9ce7fdd2c03deb41d8ff17c328abddbae5370466ab5
@@ -2,6 +2,10 @@
2
2
 
3
3
  An [unreleased] version is not available on rubygems and is subject to changes and must not be considered final. Elements of unreleased list may be edited or removed at any time.
4
4
 
5
+ ## [0.8.0] 2019-11-04
6
+
7
+ - [Added] Capability object
8
+
5
9
  ## [0.7.2] 2019-09-30
6
10
 
7
11
  - [Changed] Removed CA certificate pining
@@ -1,6 +1,7 @@
1
1
  require "omise/account"
2
2
  require "omise/balance"
3
3
  require "omise/bank_account"
4
+ require "omise/capability"
4
5
  require "omise/card"
5
6
  require "omise/chain"
6
7
  require "omise/charge"
@@ -0,0 +1,32 @@
1
+ require "omise/object"
2
+
3
+ module Omise
4
+ class Capability < OmiseObject
5
+ self.endpoint = "/capability"
6
+ singleton!
7
+
8
+ PaymentMethod = Struct.new(
9
+ :object,
10
+ :name,
11
+ :currencies,
12
+ :card_brands,
13
+ :installment_terms
14
+ )
15
+
16
+ def self.resource_key
17
+ Omise.public_api_key
18
+ end
19
+
20
+ def payment_methods
21
+ self["payment_methods"].map do |payment_method|
22
+ PaymentMethod.new(
23
+ payment_method["object"],
24
+ payment_method["name"],
25
+ payment_method["currencies"],
26
+ payment_method["card_brands"],
27
+ payment_method["installment_terms"]
28
+ )
29
+ end
30
+ end
31
+ end
32
+ end
@@ -1,3 +1,3 @@
1
1
  module Omise
2
- VERSION = "0.7.2"
2
+ VERSION = "0.8.0"
3
3
  end
@@ -0,0 +1,29 @@
1
+ {
2
+ "object": "capability",
3
+ "location": "/capability",
4
+ "payment_methods": [
5
+ {
6
+ "object": "payment_method",
7
+ "name": "card",
8
+ "currencies": [
9
+ "THB",
10
+ "JPY",
11
+ "USD",
12
+ "EUR",
13
+ "GBP",
14
+ "SGD",
15
+ "AUD",
16
+ "CHF",
17
+ "CNY",
18
+ "DKK",
19
+ "HKD"
20
+ ],
21
+ "card_brands": [
22
+ "JCB",
23
+ "Visa",
24
+ "MasterCard"
25
+ ],
26
+ "installment_terms": null
27
+ }
28
+ ]
29
+ }
@@ -0,0 +1,30 @@
1
+ require "support"
2
+
3
+ class TestCapability < Omise::Test
4
+ setup do
5
+ @capability = Omise::Capability.retrieve
6
+ @payment_methods = @capability.payment_methods
7
+ end
8
+
9
+ def test_that_we_can_retrieve_capabilities
10
+ assert_instance_of Omise::Capability, @capability
11
+ assert_equal "/capability", @capability.location
12
+ end
13
+
14
+ def test_we_have_payment_backends
15
+ assert @payment_methods.is_a?(Array)
16
+ refute @payment_methods.empty?
17
+ end
18
+
19
+ def test_that_we_can_list_payment_methods
20
+ payment_method = @payment_methods.first
21
+
22
+ assert_instance_of Array, @payment_methods
23
+ assert_instance_of Omise::Capability::PaymentMethod, payment_method
24
+ assert payment_method.respond_to?(:object)
25
+ assert payment_method.respond_to?(:name)
26
+ assert payment_method.respond_to?(:currencies)
27
+ assert payment_method.respond_to?(:card_brands)
28
+ assert payment_method.respond_to?(:installment_terms)
29
+ end
30
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omise
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robin Clart
@@ -116,6 +116,7 @@ files:
116
116
  - lib/omise/attributes.rb
117
117
  - lib/omise/balance.rb
118
118
  - lib/omise/bank_account.rb
119
+ - lib/omise/capability.rb
119
120
  - lib/omise/card.rb
120
121
  - lib/omise/card_list.rb
121
122
  - lib/omise/chain.rb
@@ -155,6 +156,7 @@ files:
155
156
  - omise.gemspec
156
157
  - test/fixtures/api.omise.co/account-get.json
157
158
  - test/fixtures/api.omise.co/balance-get.json
159
+ - test/fixtures/api.omise.co/capability-get.json
158
160
  - test/fixtures/api.omise.co/chains-get.json
159
161
  - test/fixtures/api.omise.co/chains/acch_test_57io26ws5af7plco6k1-get.json
160
162
  - test/fixtures/api.omise.co/chains/acch_test_57io26ws5af7plco6k1/revoke-post.json
@@ -228,6 +230,7 @@ files:
228
230
  - test/omise/test_account.rb
229
231
  - test/omise/test_attributes.rb
230
232
  - test/omise/test_balance.rb
233
+ - test/omise/test_capability.rb
231
234
  - test/omise/test_card.rb
232
235
  - test/omise/test_chain.rb
233
236
  - test/omise/test_charge.rb
@@ -280,6 +283,7 @@ summary: Omise Ruby client
280
283
  test_files:
281
284
  - test/fixtures/api.omise.co/account-get.json
282
285
  - test/fixtures/api.omise.co/balance-get.json
286
+ - test/fixtures/api.omise.co/capability-get.json
283
287
  - test/fixtures/api.omise.co/chains-get.json
284
288
  - test/fixtures/api.omise.co/chains/acch_test_57io26ws5af7plco6k1-get.json
285
289
  - test/fixtures/api.omise.co/chains/acch_test_57io26ws5af7plco6k1/revoke-post.json
@@ -353,6 +357,7 @@ test_files:
353
357
  - test/omise/test_account.rb
354
358
  - test/omise/test_attributes.rb
355
359
  - test/omise/test_balance.rb
360
+ - test/omise/test_capability.rb
356
361
  - test/omise/test_card.rb
357
362
  - test/omise/test_chain.rb
358
363
  - test/omise/test_charge.rb