From ed541fb3b0ff547833db23f0c4e472e977a65d47 Mon Sep 17 00:00:00 2001 From: Jordan Trevino Date: Wed, 5 Aug 2020 18:21:34 -0500 Subject: [PATCH 01/15] Add receipit --- README.md | 119 +++++++++++++++++++++++++++ lib/hyperwallet/api/client.rb | 2 +- lib/hyperwallet/resources.rb | 3 +- lib/hyperwallet/resources/receipt.rb | 35 ++++++++ 4 files changed, 157 insertions(+), 2 deletions(-) create mode 100644 lib/hyperwallet/resources/receipt.rb diff --git a/README.md b/README.md index 7881f27..3eb5545 100644 --- a/README.md +++ b/README.md @@ -41,3 +41,122 @@ The gem is available as open source under the terms of the [MIT License](https:/ ## Code of Conduct Everyone interacting in the Hyperwallet::Ruby project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/hyperwallet-ruby/blob/master/CODE_OF_CONDUCT.md). + +### Payee + + # index + payee_connector = Hyperwallet::Resources::Payee + payees = payee_connector.index + + +#### create + + payload2 = {:client_user_id => 'test5userid5', + :profile_type => 'INDIVIDUAL' , + :first_name => 'Han', + :last_name => 'Solo' , + :date_of_birth => '1980-11-12', + :email => 'jgtr7@hey.com', + :address_line1 => '675 Dolores St', + :city => 'Berkeley' , + :state_province => 'CA' , + :country => 'US', + :postal_code => '94704', + :program_token => 'prg-1bd466b5-2a58-4e3a-8942-6a93591a9a86' } + + new_payee2 = Hyperwallet::Resources::Payee.create(payload2) + + +#### show + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + payee = Hyperwallet::Resources::Payee.new + payee.show(token: user_token) + +#### Getting a new auth token + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + existing_payee = Hyperwallet::Resources::Payee.new(token: user_token) + token = existing_payee.get_authentication_token + +#### Getting the list of bank accounts for a user + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + existing_payee = Hyperwallet::Resources::Payee.new(token: user_token) + bank_accounts = existing_payee.index_bank_accounts + +### Transfer Methods +#### Getting transfer methods +##### On TransferMethod + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + transfer_methods = Hyperwallet::Resources::TransferMethod.index(user_token: user_token) + +##### On BankAccount + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + bank_accounts = Hyperwallet::Resources::BankAccount.index(user_token: user_token) + +#### Show BankAccount method + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + transfer_token = "trm-e998ba11-ca03-4a27-8bd9-dc95120d8e57" + bank_account = Hyperwallet::Resources::BankAccount.new + bank_account.show(user_token: user_token, transfer_token: transfer_token) + +#### Show TransferMethod method + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + transfer_token = "trm-e998ba11-ca03-4a27-8bd9-dc95120d8e57" + transfer_method = Hyperwallet::Resources::TransferMethod.new + transfer_method.show(user_token: user_token, transfer_token: transfer_token) + +#### Creating a bank account + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + + payload3 = { + token: user_token, + profile_type: "INDIVIDUAL", + transfer_method_country: "US", + transfer_method_currency: "USD", + type: "BANK_ACCOUNT", + branch_id: 101089292, + bank_account_id: 7861012347, + bank_account_purpose: "CHECKING", + bank_account_relationship: "SELF" + } + + existing_payee = Hyperwallet::Resources::Payee.new(payload) + new_account = existing_payee.create_bank_account + + + + +### Payment +#### Create + bank_account_token = "trm-b7b7e1f9-9a02-4cdf-a281-6beeb958c41a" + bank_account_token = 'trm-e998ba11-ca03-4a27-8bd9-dc95120d8e57' + + payload = { + amount: "20.00", + currency: "USD", + client_payment_id: "123456789", + destination_token: bank_account_token, + program_token: "prg-1bd466b5-2a58-4e3a-8942-6a93591a9a86", + purpose: "PP0001" + } + + new_payment = Hyperwallet::Resources::Payment.create(payload) + + +#### Get payment + token = "pmt-cb7ba194-1e2c-4227-ae43-006fafba062d" + payment = Hyperwallet::Resources::Payment.new + retrieved_payment = payment.show(token: token) + +#### List payments +payments = Hyperwallet::Resources::Payment.index + + +### Webhook Notification + webhook_token = "wbh-e4b41307-536b-45d1-bf0d-55fe2d011aa8" + webhook = Hyperwallet::Resources::WebhookNotification.new + webhook.show(token: webhook_token) + +### Receipts + user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" + receipt = Hyperwallet::Resources::Receipt.new + receipt.show(token: user_token) diff --git a/lib/hyperwallet/api/client.rb b/lib/hyperwallet/api/client.rb index 77159e5..91d05bd 100644 --- a/lib/hyperwallet/api/client.rb +++ b/lib/hyperwallet/api/client.rb @@ -30,7 +30,7 @@ def post(resource:, payload: nil) def handle_response if self.response.success? - @body = JSON.parse(self.response.body) + @body = JSON.parse(self.response.body) unless self.response.body.empty? else @errors = JSON.parse(self.response.body) end diff --git a/lib/hyperwallet/resources.rb b/lib/hyperwallet/resources.rb index 355e8c2..776bc50 100644 --- a/lib/hyperwallet/resources.rb +++ b/lib/hyperwallet/resources.rb @@ -4,4 +4,5 @@ require 'hyperwallet/resources/transfer_method' require 'hyperwallet/resources/bank_account' require 'hyperwallet/resources/venmo_account' -require 'hyperwallet/resources/webhook_notification' \ No newline at end of file +require 'hyperwallet/resources/webhook_notification' +require 'hyperwallet/resources/receipt' \ No newline at end of file diff --git a/lib/hyperwallet/resources/receipt.rb b/lib/hyperwallet/resources/receipt.rb new file mode 100644 index 0000000..7703fda --- /dev/null +++ b/lib/hyperwallet/resources/receipt.rb @@ -0,0 +1,35 @@ +require 'active_support/json' + +module Hyperwallet + module Resources + class Receipt < Hyperwallet::Resources::Base + + ENDPOINT = 'users' + + attr_accessor :token, + :journal_id, + :type, + :created_on, + :entry, + :source_token, + :destination_token, + :amount, + :fee, + :currency, + :details + + + def show(token: nil) + token ||= @token + connector.get(resource: ENDPOINT + "/" + token + "/" + method_endpoint) + handle_response + end + + private + + def method_endpoint + 'receipts' + end + end + end +end \ No newline at end of file From e487eca0c64a8d8d4849ea94972295d149501f46 Mon Sep 17 00:00:00 2001 From: Jordan Trevino Date: Wed, 5 Aug 2020 18:27:47 -0500 Subject: [PATCH 02/15] Update readme --- README.md | 48 +++++++++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 3eb5545..ad2364d 100644 --- a/README.md +++ b/README.md @@ -43,14 +43,14 @@ The gem is available as open source under the terms of the [MIT License](https:/ Everyone interacting in the Hyperwallet::Ruby project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/hyperwallet-ruby/blob/master/CODE_OF_CONDUCT.md). ### Payee - +```ruby # index payee_connector = Hyperwallet::Resources::Payee payees = payee_connector.index - +``` #### create - +```ruby payload2 = {:client_user_id => 'test5userid5', :profile_type => 'INDIVIDUAL' , :first_name => 'Han', @@ -66,45 +66,53 @@ Everyone interacting in the Hyperwallet::Ruby project’s codebases, issue track new_payee2 = Hyperwallet::Resources::Payee.create(payload2) - +``` #### show +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" payee = Hyperwallet::Resources::Payee.new payee.show(token: user_token) - +``` #### Getting a new auth token +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" existing_payee = Hyperwallet::Resources::Payee.new(token: user_token) token = existing_payee.get_authentication_token - +``` #### Getting the list of bank accounts for a user +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" existing_payee = Hyperwallet::Resources::Payee.new(token: user_token) bank_accounts = existing_payee.index_bank_accounts - +``` ### Transfer Methods #### Getting transfer methods ##### On TransferMethod +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" transfer_methods = Hyperwallet::Resources::TransferMethod.index(user_token: user_token) - +``` ##### On BankAccount +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" bank_accounts = Hyperwallet::Resources::BankAccount.index(user_token: user_token) - +``` #### Show BankAccount method +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" transfer_token = "trm-e998ba11-ca03-4a27-8bd9-dc95120d8e57" bank_account = Hyperwallet::Resources::BankAccount.new bank_account.show(user_token: user_token, transfer_token: transfer_token) - +``` #### Show TransferMethod method +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" transfer_token = "trm-e998ba11-ca03-4a27-8bd9-dc95120d8e57" transfer_method = Hyperwallet::Resources::TransferMethod.new transfer_method.show(user_token: user_token, transfer_token: transfer_token) - +``` #### Creating a bank account +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" payload3 = { @@ -121,12 +129,13 @@ Everyone interacting in the Hyperwallet::Ruby project’s codebases, issue track existing_payee = Hyperwallet::Resources::Payee.new(payload) new_account = existing_payee.create_bank_account - +``` ### Payment #### Create +```ruby bank_account_token = "trm-b7b7e1f9-9a02-4cdf-a281-6beeb958c41a" bank_account_token = 'trm-e998ba11-ca03-4a27-8bd9-dc95120d8e57' @@ -140,23 +149,28 @@ Everyone interacting in the Hyperwallet::Ruby project’s codebases, issue track } new_payment = Hyperwallet::Resources::Payment.create(payload) - +``` #### Get payment +```ruby token = "pmt-cb7ba194-1e2c-4227-ae43-006fafba062d" payment = Hyperwallet::Resources::Payment.new retrieved_payment = payment.show(token: token) - +``` #### List payments -payments = Hyperwallet::Resources::Payment.index - +```ruby + payments = Hyperwallet::Resources::Payment.index +``` ### Webhook Notification +```ruby webhook_token = "wbh-e4b41307-536b-45d1-bf0d-55fe2d011aa8" webhook = Hyperwallet::Resources::WebhookNotification.new webhook.show(token: webhook_token) - +``` ### Receipts +```ruby user_token = "usr-6ac6618e-44fe-4252-af8c-76cd4e68f601" receipt = Hyperwallet::Resources::Receipt.new receipt.show(token: user_token) +``` \ No newline at end of file From bbb36854115f582a4336defff7ed30fe20f80063 Mon Sep 17 00:00:00 2001 From: Jordan Trevino Date: Tue, 11 Aug 2020 20:26:02 -0500 Subject: [PATCH 03/15] Add proxy option to gem --- lib/hyperwallet/api/client.rb | 2 +- lib/hyperwallet/api/config.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/hyperwallet/api/client.rb b/lib/hyperwallet/api/client.rb index 77159e5..dfabf29 100644 --- a/lib/hyperwallet/api/client.rb +++ b/lib/hyperwallet/api/client.rb @@ -37,7 +37,7 @@ def handle_response end def get_connector - Faraday.new(url: base_url) do |conn| + Faraday.new(url: base_url, proxy: self.class.proxy) do |conn| conn.adapter :net_http conn.basic_auth(self.class.api_user, self.class.api_password) end diff --git a/lib/hyperwallet/api/config.rb b/lib/hyperwallet/api/config.rb index 4a1b8dd..a9c781c 100644 --- a/lib/hyperwallet/api/config.rb +++ b/lib/hyperwallet/api/config.rb @@ -9,7 +9,7 @@ class Config MODES = [:uat, :production] class << self - cattr_accessor :api_user, :api_password, :api_mode + cattr_accessor :api_user, :api_password, :api_mode, :proxy def uat? api_mode == :uat From d5bf205ec176dbf0303f248a90a6c50dbb837fa2 Mon Sep 17 00:00:00 2001 From: Jordan Trevino Date: Wed, 12 Aug 2020 17:18:19 -0500 Subject: [PATCH 04/15] Fix production --- lib/hyperwallet/api/client.rb | 2 +- lib/hyperwallet/api/config.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/hyperwallet/api/client.rb b/lib/hyperwallet/api/client.rb index 9a47439..2d517e8 100644 --- a/lib/hyperwallet/api/client.rb +++ b/lib/hyperwallet/api/client.rb @@ -55,7 +55,7 @@ def active_url if self.class.uat? UAT_URL elsif self.class.production? - BASE_URL + PRODUCTION_URL end end diff --git a/lib/hyperwallet/api/config.rb b/lib/hyperwallet/api/config.rb index a9c781c..6da7d3f 100644 --- a/lib/hyperwallet/api/config.rb +++ b/lib/hyperwallet/api/config.rb @@ -2,7 +2,7 @@ module Hyperwallet module Api class Config - PRODUCTION_URL = "https://api.sandbox.hyperwallet.com/rest" + PRODUCTION_URL = "https://api.paylution.com/rest" UAT_URL = "https://uat-api.paylution.com/rest" API_VERSION = "/v3" From 71a28db793ab6d1302984d6c23c6d9db52c35657 Mon Sep 17 00:00:00 2001 From: Daniel Chincoya Date: Mon, 29 Mar 2021 13:07:42 -0600 Subject: [PATCH 05/15] Update ActiveSupport to 6.1.3.1 --- Gemfile.lock | 27 +++++++++++++-------------- hyperwallet-ruby.gemspec | 2 +- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 8bac114..0678d12 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,27 +2,27 @@ PATH remote: . specs: hyperwallet-ruby (0.1.0) - activesupport (~> 6.0.3.2) + activesupport (~> 6.1.3.1) faraday (~> 0.17.3) GEM remote: https://rubygems.org/ specs: - activesupport (6.0.3.2) + activesupport (6.1.3.1) concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 0.7, < 2) - minitest (~> 5.1) - tzinfo (~> 1.1) - zeitwerk (~> 2.2, >= 2.2.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + zeitwerk (~> 2.3) coderay (1.1.3) - concurrent-ruby (1.1.6) + concurrent-ruby (1.1.8) diff-lcs (1.3) - faraday (0.17.3) + faraday (0.17.4) multipart-post (>= 1.2, < 3) - i18n (1.8.3) + i18n (1.8.9) concurrent-ruby (~> 1.0) method_source (1.0.0) - minitest (5.14.1) + minitest (5.14.4) multipart-post (2.1.1) pry (0.13.1) coderay (~> 1.1) @@ -41,10 +41,9 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.9.0) rspec-support (3.9.3) - thread_safe (0.3.6) - tzinfo (1.2.7) - thread_safe (~> 0.1) - zeitwerk (2.3.0) + tzinfo (2.0.4) + concurrent-ruby (~> 1.0) + zeitwerk (2.4.2) PLATFORMS ruby diff --git a/hyperwallet-ruby.gemspec b/hyperwallet-ruby.gemspec index 16fb53b..2d6ca93 100644 --- a/hyperwallet-ruby.gemspec +++ b/hyperwallet-ruby.gemspec @@ -27,7 +27,7 @@ Gem::Specification.new do |s| s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) } s.require_paths = ["lib"] - s.add_dependency 'activesupport', "~> 6.0.3.2" + s.add_dependency 'activesupport', "~> 6.1.3.1" s.add_dependency "faraday", "~> 0.17.3" s.add_development_dependency "bundler", "~> 2.0" s.add_development_dependency "rake", "~> 13.0" From 15b0282f191acb482e055afc6b871885ccfc52ff Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Mon, 28 Jun 2021 12:35:28 -0500 Subject: [PATCH 06/15] Update syntax to Rails 6.1 compliance --- lib/hyperwallet/api/config.rb | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/hyperwallet/api/config.rb b/lib/hyperwallet/api/config.rb index 6da7d3f..ce9262f 100644 --- a/lib/hyperwallet/api/config.rb +++ b/lib/hyperwallet/api/config.rb @@ -1,6 +1,7 @@ module Hyperwallet module Api class Config + cattr_accessor :api_user, :api_password, :api_mode, :proxy PRODUCTION_URL = "https://api.paylution.com/rest" UAT_URL = "https://uat-api.paylution.com/rest" @@ -9,8 +10,6 @@ class Config MODES = [:uat, :production] class << self - cattr_accessor :api_user, :api_password, :api_mode, :proxy - def uat? api_mode == :uat end @@ -21,4 +20,4 @@ def production? end end end -end \ No newline at end of file +end From cf94466c0e866082a718ea1aa5d55adf2f911f21 Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Mon, 28 Jun 2021 12:39:24 -0500 Subject: [PATCH 07/15] Upgrade Faraday (0.17.3 -> 1.4.3) --- hyperwallet-ruby.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hyperwallet-ruby.gemspec b/hyperwallet-ruby.gemspec index 2d6ca93..c9fde83 100644 --- a/hyperwallet-ruby.gemspec +++ b/hyperwallet-ruby.gemspec @@ -28,7 +28,7 @@ Gem::Specification.new do |s| s.require_paths = ["lib"] s.add_dependency 'activesupport', "~> 6.1.3.1" - s.add_dependency "faraday", "~> 0.17.3" + s.add_dependency "faraday", "~> 1.4.3" s.add_development_dependency "bundler", "~> 2.0" s.add_development_dependency "rake", "~> 13.0" s.add_development_dependency "rspec", "~> 3.0" From bf5ebc8019b54c15aba75ac0b5cac2eaa8408506 Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Mon, 28 Jun 2021 12:46:02 -0500 Subject: [PATCH 08/15] Add double splat operator --- lib/hyperwallet/resources/base.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/hyperwallet/resources/base.rb b/lib/hyperwallet/resources/base.rb index 16f6ea2..05f3a7f 100644 --- a/lib/hyperwallet/resources/base.rb +++ b/lib/hyperwallet/resources/base.rb @@ -135,7 +135,7 @@ def instantiate_from_data(data = {}) data.each_pair do |key, value| attributes.merge!({snakecase(key).to_sym => value}) end - self.send(:new, attributes) + self.send(:new, **attributes) end def camelCase(key) From 36c7e9d59dd9c994e1c0a642ee4d407e1a4409dd Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Mon, 28 Jun 2021 17:03:39 -0500 Subject: [PATCH 09/15] Remove activesupport dependency --- hyperwallet-ruby.gemspec | 1 - 1 file changed, 1 deletion(-) diff --git a/hyperwallet-ruby.gemspec b/hyperwallet-ruby.gemspec index c9fde83..b12e6eb 100644 --- a/hyperwallet-ruby.gemspec +++ b/hyperwallet-ruby.gemspec @@ -27,7 +27,6 @@ Gem::Specification.new do |s| s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) } s.require_paths = ["lib"] - s.add_dependency 'activesupport', "~> 6.1.3.1" s.add_dependency "faraday", "~> 1.4.3" s.add_development_dependency "bundler", "~> 2.0" s.add_development_dependency "rake", "~> 13.0" From 03e98750ef0c60adeedcd014ab9d97c0ac2e717e Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Tue, 29 Jun 2021 13:18:41 -0500 Subject: [PATCH 10/15] Remove active support dependency and use ruby libraries --- Gemfile.lock | 30 +++++++++++++--------------- hyperwallet-ruby.gemspec | 2 +- lib/hyperwallet/hyperwallet.rb | 1 - lib/hyperwallet/resources/payee.rb | 4 ++-- lib/hyperwallet/resources/receipt.rb | 2 +- 5 files changed, 18 insertions(+), 21 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 0678d12..d08bd48 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,27 +2,27 @@ PATH remote: . specs: hyperwallet-ruby (0.1.0) - activesupport (~> 6.1.3.1) - faraday (~> 0.17.3) + faraday (~> 1.0) GEM remote: https://rubygems.org/ specs: - activesupport (6.1.3.1) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 1.6, < 2) - minitest (>= 5.1) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) coderay (1.1.3) - concurrent-ruby (1.1.8) diff-lcs (1.3) - faraday (0.17.4) + faraday (1.4.3) + faraday-em_http (~> 1.0) + faraday-em_synchrony (~> 1.0) + faraday-excon (~> 1.1) + faraday-net_http (~> 1.0) + faraday-net_http_persistent (~> 1.1) multipart-post (>= 1.2, < 3) - i18n (1.8.9) - concurrent-ruby (~> 1.0) + ruby2_keywords (>= 0.0.4) + faraday-em_http (1.0.0) + faraday-em_synchrony (1.0.0) + faraday-excon (1.1.0) + faraday-net_http (1.0.1) + faraday-net_http_persistent (1.1.0) method_source (1.0.0) - minitest (5.14.4) multipart-post (2.1.1) pry (0.13.1) coderay (~> 1.1) @@ -41,9 +41,7 @@ GEM diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.9.0) rspec-support (3.9.3) - tzinfo (2.0.4) - concurrent-ruby (~> 1.0) - zeitwerk (2.4.2) + ruby2_keywords (0.0.4) PLATFORMS ruby diff --git a/hyperwallet-ruby.gemspec b/hyperwallet-ruby.gemspec index b12e6eb..fee65c9 100644 --- a/hyperwallet-ruby.gemspec +++ b/hyperwallet-ruby.gemspec @@ -27,7 +27,7 @@ Gem::Specification.new do |s| s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) } s.require_paths = ["lib"] - s.add_dependency "faraday", "~> 1.4.3" + s.add_dependency "faraday", "~> 1.0" s.add_development_dependency "bundler", "~> 2.0" s.add_development_dependency "rake", "~> 13.0" s.add_development_dependency "rspec", "~> 3.0" diff --git a/lib/hyperwallet/hyperwallet.rb b/lib/hyperwallet/hyperwallet.rb index 5ec2627..23b6bb3 100644 --- a/lib/hyperwallet/hyperwallet.rb +++ b/lib/hyperwallet/hyperwallet.rb @@ -1,4 +1,3 @@ -require 'active_support/core_ext/class/attribute_accessors' require "hyperwallet/version" require "hyperwallet/api" require "hyperwallet/resources" diff --git a/lib/hyperwallet/resources/payee.rb b/lib/hyperwallet/resources/payee.rb index 92f56b6..93b1b36 100644 --- a/lib/hyperwallet/resources/payee.rb +++ b/lib/hyperwallet/resources/payee.rb @@ -1,4 +1,4 @@ -require 'active_support/json' +require 'json' module Hyperwallet module Resources @@ -30,7 +30,7 @@ def show(token: nil) end def update(token:, attributes_to_update: ) - connector.put(resource: ENDPOINT + "/" + token, payload: prepare_payload(payload_attributes: attributes_to_update).to_json) + connector.put(resource: ENDPOINT + "/" + token, payload: JSON.generate(prepare_payload(payload_attributes: attributes_to_update))) handle_response end diff --git a/lib/hyperwallet/resources/receipt.rb b/lib/hyperwallet/resources/receipt.rb index 7703fda..37f86b0 100644 --- a/lib/hyperwallet/resources/receipt.rb +++ b/lib/hyperwallet/resources/receipt.rb @@ -1,4 +1,4 @@ -require 'active_support/json' +require 'json' module Hyperwallet module Resources From 7d8e1a714e1204bb897a46be9a5d93878a636f0f Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Tue, 29 Jun 2021 13:40:44 -0500 Subject: [PATCH 11/15] Use of ruby attribute accessor --- lib/hyperwallet/api/config.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/hyperwallet/api/config.rb b/lib/hyperwallet/api/config.rb index ce9262f..1ce9719 100644 --- a/lib/hyperwallet/api/config.rb +++ b/lib/hyperwallet/api/config.rb @@ -1,7 +1,6 @@ module Hyperwallet module Api class Config - cattr_accessor :api_user, :api_password, :api_mode, :proxy PRODUCTION_URL = "https://api.paylution.com/rest" UAT_URL = "https://uat-api.paylution.com/rest" @@ -10,6 +9,7 @@ class Config MODES = [:uat, :production] class << self + attr_accessor :api_user, :api_password, :api_mode, :proxy def uat? api_mode == :uat end From a3e01e1c7407d6ae4b2dbaf53002c8e692fbb587 Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Tue, 29 Jun 2021 13:41:38 -0500 Subject: [PATCH 12/15] Use of JSON Ruby library --- lib/hyperwallet/resources/base.rb | 4 ++-- lib/hyperwallet/resources/transfer_method.rb | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/hyperwallet/resources/base.rb b/lib/hyperwallet/resources/base.rb index 05f3a7f..85528c9 100644 --- a/lib/hyperwallet/resources/base.rb +++ b/lib/hyperwallet/resources/base.rb @@ -91,7 +91,7 @@ def data_for_hydration end class << self - cattr_accessor :connector + attr_accessor :connector def index connector.get(resource: method_endpoint) @@ -99,7 +99,7 @@ def index def create(data) response = connector.post(resource: method_endpoint, - payload: prepare_payload(payload_attributes: data).to_json) + payload: JSON.generate(prepare_payload(payload_attributes: data))) data = if success? response diff --git a/lib/hyperwallet/resources/transfer_method.rb b/lib/hyperwallet/resources/transfer_method.rb index c35489d..68c7bf9 100644 --- a/lib/hyperwallet/resources/transfer_method.rb +++ b/lib/hyperwallet/resources/transfer_method.rb @@ -45,7 +45,7 @@ def index(user_token:) def create(user_token, data) response = connector.post(resource: resource_endpoint(token: user_token), - payload: prepare_payload(payload_attributes: data).to_json) + payload: JSON.generate(prepare_payload(payload_attributes: data))) instantiate_from_data(response) end From 802fb7fab0cb1e13aece092d017fe784304822a5 Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Wed, 30 Jun 2021 16:08:43 -0500 Subject: [PATCH 13/15] Use superclass variables --- lib/hyperwallet/api/client.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/hyperwallet/api/client.rb b/lib/hyperwallet/api/client.rb index 2d517e8..fa58c5b 100644 --- a/lib/hyperwallet/api/client.rb +++ b/lib/hyperwallet/api/client.rb @@ -37,9 +37,9 @@ def handle_response end def get_connector - Faraday.new(url: base_url, proxy: self.class.proxy) do |conn| + Faraday.new(url: base_url, proxy: self.class.superclass.proxy) do |conn| conn.adapter :net_http - conn.basic_auth(self.class.api_user, self.class.api_password) + conn.basic_auth(self.class.superclass.api_user, self.class.superclass.api_password) end end @@ -52,9 +52,9 @@ def base_url end def active_url - if self.class.uat? + if self.class.superclass.uat? UAT_URL - elsif self.class.production? + elsif self.class.superclass.production? PRODUCTION_URL end end From 05c6df4ecfee725b81217a1c3f2e3644c22f3dd4 Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Thu, 1 Jul 2021 12:27:42 -0500 Subject: [PATCH 14/15] new patch version --- lib/hyperwallet/version.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/hyperwallet/version.rb b/lib/hyperwallet/version.rb index accc71c..a4776e8 100644 --- a/lib/hyperwallet/version.rb +++ b/lib/hyperwallet/version.rb @@ -1,3 +1,3 @@ module Hyperwallet - VERSION = "0.1.0" + VERSION = "0.1.1" end From 596bd84e498f5b8490ead19bc5db558ccd504299 Mon Sep 17 00:00:00 2001 From: Diego Moreno Date: Thu, 1 Jul 2021 12:28:16 -0500 Subject: [PATCH 15/15] Updated gemfile.lock gem version --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index d08bd48..86389c6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - hyperwallet-ruby (0.1.0) + hyperwallet-ruby (0.1.1) faraday (~> 1.0) GEM