paypal-checkout-sdk 1.0.1

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.
Files changed (39) hide show
  1. checksums.yaml +7 -0
  2. data/lib/core/access_token.rb +20 -0
  3. data/lib/core/paypal_environment.rb +38 -0
  4. data/lib/core/paypal_http_client.rb +56 -0
  5. data/lib/core/token_requests.rb +40 -0
  6. data/lib/core/version.rb +3 -0
  7. data/lib/lib.rb +18 -0
  8. data/lib/orders/orders_authorize_request.rb +45 -0
  9. data/lib/orders/orders_capture_request.rb +45 -0
  10. data/lib/orders/orders_create_request.rb +39 -0
  11. data/lib/orders/orders_get_request.rb +31 -0
  12. data/lib/orders/orders_patch_request.rb +33 -0
  13. data/lib/orders/orders_validate_request.rb +37 -0
  14. data/lib/payments/authorizations_capture_request.rb +41 -0
  15. data/lib/payments/authorizations_get_request.rb +29 -0
  16. data/lib/payments/authorizations_reauthorize_request.rb +41 -0
  17. data/lib/payments/authorizations_void_request.rb +29 -0
  18. data/lib/payments/captures_get_request.rb +29 -0
  19. data/lib/payments/captures_refund_request.rb +41 -0
  20. data/lib/payments/refunds_get_request.rb +29 -0
  21. data/lib/paypal-checkout-sdk.rb +1 -0
  22. data/paypal-checkout-sdk.gemspec +13 -0
  23. data/spec/orders/orders_authorize_spec.rb +18 -0
  24. data/spec/orders/orders_capture_spec.rb +18 -0
  25. data/spec/orders/orders_create_spec.rb +36 -0
  26. data/spec/orders/orders_get_spec.rb +37 -0
  27. data/spec/orders/orders_helper.rb +33 -0
  28. data/spec/orders/orders_patch_spec.rb +60 -0
  29. data/spec/orders/orders_validate_spec.rb +18 -0
  30. data/spec/payments/authorizations_capture_spec.rb +18 -0
  31. data/spec/payments/authorizations_get_spec.rb +18 -0
  32. data/spec/payments/authorizations_reauthorize_spec.rb +17 -0
  33. data/spec/payments/authorizations_void_spec.rb +17 -0
  34. data/spec/payments/captures_get_spec.rb +18 -0
  35. data/spec/payments/captures_refund_spec.rb +18 -0
  36. data/spec/payments/refunds_get_spec.rb +18 -0
  37. data/spec/spec_helper.rb +109 -0
  38. data/spec/test_harness.rb +25 -0
  39. metadata +80 -0
@@ -0,0 +1,29 @@
1
+ # This class was generated on Mon, 27 Aug 2018 13:52:18 PDT by version 0.1.0-dev+904328-dirty of Braintree SDK Generator
2
+ # authorizations_get_request.rb
3
+ # @version 0.1.0-dev+904328-dirty
4
+ # @type request
5
+ # @data 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
6
+ # DO NOT EDIT
7
+ require 'cgi'
8
+
9
+ module PayPalCheckoutSdk
10
+ module Payments
11
+
12
+ #
13
+ # Shows details for an authorized payment, by ID.
14
+ #
15
+ class AuthorizationsGetRequest
16
+ attr_accessor :path, :body, :headers, :verb
17
+
18
+ def initialize(authorization_id)
19
+ @headers = {}
20
+ @body = nil
21
+ @verb = "GET"
22
+ @path = "/v2/payments/authorizations/{authorization_id}?"
23
+
24
+ @path = @path.gsub("{authorization_id}", CGI::escape(authorization_id.to_s))
25
+ @headers["Content-Type"] = "application/json"
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,41 @@
1
+ # This class was generated on Mon, 27 Aug 2018 13:52:18 PDT by version 0.1.0-dev+904328-dirty of Braintree SDK Generator
2
+ # authorizations_reauthorize_request.rb
3
+ # @version 0.1.0-dev+904328-dirty
4
+ # @type request
5
+ # @data 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
6
+ # DO NOT EDIT
7
+ require 'cgi'
8
+
9
+ module PayPalCheckoutSdk
10
+ module Payments
11
+
12
+ #
13
+ # Reauthorizes an authorized PayPal account payment, by ID. To ensure that funds are still available, reauthorize a payment after its initial three-day honor period expires. You can reauthorize a payment only once from days four to 29.<br/><br/>If 30 days have transpired since the date of the original authorization, you must create an authorized payment instead of reauthorizing the original authorized payment.<br/><br/>A reauthorized payment itself has a new honor period of three days.<br/><br/>You can reauthorize an authorized payment once for up to 115% of the original authorized amount, not to exceed an increase of $75 USD.<br/><br/>Supports only the `amount` request parameter.
14
+ #
15
+ class AuthorizationsReauthorizeRequest
16
+ attr_accessor :path, :body, :headers, :verb
17
+
18
+ def initialize(authorization_id)
19
+ @headers = {}
20
+ @body = nil
21
+ @verb = "POST"
22
+ @path = "/v2/payments/authorizations/{authorization_id}/reauthorize?"
23
+
24
+ @path = @path.gsub("{authorization_id}", CGI::escape(authorization_id.to_s))
25
+ @headers["Content-Type"] = "application/json"
26
+ end
27
+
28
+ def pay_pal_request_id(pay_pal_request_id)
29
+ @headers["PayPal-Request-Id"] = pay_pal_request_id
30
+ end
31
+
32
+ def prefer(prefer)
33
+ @headers["Prefer"] = prefer
34
+ end
35
+
36
+ def request_body(reauthorizeRequest)
37
+ @body = reauthorizeRequest
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,29 @@
1
+ # This class was generated on Mon, 27 Aug 2018 13:52:18 PDT by version 0.1.0-dev+904328-dirty of Braintree SDK Generator
2
+ # authorizations_void_request.rb
3
+ # @version 0.1.0-dev+904328-dirty
4
+ # @type request
5
+ # @data H4sIAAAAAAAC/6yTQW/TQBCF7/yK0ZyXukScfIsaUCsENSSqhFCFJt5JvXSzu8yOI0yU/47WMdCUckDiZr15Hr1vnr3Hd7RlrJF67aK476Quhny2i86iwQXnVlwqGtZ4E53NBqJAS6Flnw1QgJ9vsoVEw5aDGlgPcLU4g4+xL9YQFcrCp92gHSl0lGHNHGDTez9AS0l7YXuGBt/3LENDQltWloz1p1uDl0yW5UTd42pIhSWruHCHBm9IHK09T4zzh4xo8A0Pf5mccs/blnMGjfcln8Tt9MjBpuiCQrV7UcVCNqvGSUk9F6HhGOjc4Acmex38gPWGfOYifO2dsMVapWeDjcTEoo4z1qH3/nBr8HWU7WPuhrT7N+qTZj+Ptf4G/4N11TE0NDTkn99xYCFlC1cL2EQB7fjJ/uLY7n+CLh7OelxSxCLlFEPmh9pFDMphsiGl5F07ElZf8ljhpWp6y9pFizU218sVHo+HNVa7WTWFz9Xph1/tH5/rUE3/wvLepV8kr74lbpXtUkn7fBEtYz07f3l49gMAAP//
6
+ # DO NOT EDIT
7
+ require 'cgi'
8
+
9
+ module PayPalCheckoutSdk
10
+ module Payments
11
+
12
+ #
13
+ # Voids, or cancels, an authorized payment, by ID. You cannot void an authorized payment that has been fully captured.
14
+ #
15
+ class AuthorizationsVoidRequest
16
+ attr_accessor :path, :body, :headers, :verb
17
+
18
+ def initialize(authorization_id)
19
+ @headers = {}
20
+ @body = nil
21
+ @verb = "POST"
22
+ @path = "/v2/payments/authorizations/{authorization_id}/void?"
23
+
24
+ @path = @path.gsub("{authorization_id}", CGI::escape(authorization_id.to_s))
25
+ @headers["Content-Type"] = "application/json"
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ # This class was generated on Mon, 27 Aug 2018 13:52:18 PDT by version 0.1.0-dev+904328-dirty of Braintree SDK Generator
2
+ # captures_get_request.rb
3
+ # @version 0.1.0-dev+904328-dirty
4
+ # @type request
5
+ # @data H4sIAAAAAAAC/+w8bXMbN3Pf+yt27ulMrBmKp8iWk+hTZUuO1Ua2Ksmd6bgaEjwseYhwwAXAkWIz/u+dBe7IeyEtO6aUPsl98FjcBQ77jl28/R69YxlGx1HCclcYtMMZumgQnaJNjMid0Co6jq5TvbDA0TEhLUy1AQZlBw45W2ao3AAmSzg/HUaD6D8LNMtLZliGDo2Njj/eDqK3yDiaBvT36GaZ0+DWGaFm0SD6L2YEm0gsiTopXKqN+F/m6RhE/4HLLZgmvSdJgtaC03eoYGp0Vv6JiudaKAfx/PtYs8Klh7HHENUnxrBlIOhgEF0h4++VXEbHUyYtEuC3Qhjk0bEzBQ6iS6NzNE6gjY5VIeWn20H0Rpuszfclc+nXcV1KdiR4g+UOlzcpwiVbXjK5P0OFhjnkcH7q9eNS7GjIIxapSFJwGmyqF5VKd8Q+tUHrwkcISCCba2UxwFasvw6kdXn/PMcnHZ6+ivISUCd9rY0LrXDZJYhlulCuQdYK1FVHUhiDKlkCUxxCu9JdpkIxlQgmwRmmLEuo1wBskaTALDCYMMlUgqDNSl+8wN3xt9XaSpJHiebY4LON6bL70aUGcT9JmWGJQwPn1+/3Xxx+/8NaENT39lnMdWJjoRzOjHfZmAuDiYsNWhdXjfepsY33wKXMgeConJgKtMGay0a7sNXBg1KZM1k0pVFBulLwmEHpWZmYpQ4mePw/xcHB86SQ/n8Mv6QIv04UeFmg8dZRskacSnGHMP73y/8eByEwg6C0A7fMRcKkXMLUBNthchg+GldfbY0BHBORMbnqsXmsm3entbFsMeFiLjhyolCDS3VhmeIutZuHiysO35RRx5TCB1VkEzSgpytCcskSXM0fdQsZgEWEj68r2GsyhK81m51EsS+wjcQgczhyImv5SwPetRPOHPrAQC0GIBR8PFcOjULXxJGEMuZun6XO5fY4jp3W0g4FuulQm1mcukzGZpo8f/78p39Y9MrdPxq+3BvCNSZacet1udLEIhUSa4YDttZK5w1rmkid3P1WaId1LVtntJoFyDvtKuuO63C48dqfFZIZwPvcoLVkdbnRZFAWZoXgPsRNCgdco/WWbfBXTBwwKUGoOZOCe2GszK1N0DcGxC/0fy7spDAWKQ6PsnZk3ITt6ntakIxXrpWi5KAVTDBlckp+Qe6SoUlS9u0TWYuvidYSmeoyRvOQHCWr+XfNVBvTZOhccZGQXmCRokvRwFIXkDAFGbtDYJyL0riqTBLYjAllnWeTlflabeaGa3SUiIzJFccgpv6LXHurIJ8nb9DV5+ojlF/YPIKPE+uPe1Gtvv6tn30a42slfv7nt6V+T0W4mmuRdDLXBrjLyMnlOdDchma/jBUc8J4CI/MxgfpWs0lgUFjQhqMZwkmeIzOWgulEu9Qzn7Mlmu9sPdGCVFinTcjLqA1mvpTxzrnqAwYTFHO0OxbXL0LdQZ3vjuCkUHe2IbMK0kqAFTCii6KHQenV/vHtyc3Z+5Nr8F2qSZPlItZzNHOBi/gfKXOomd33TdoT5cvdJ5WoEt+iztEa1jWBDLlglOQgaXJdoxSTTLhVWoHWT5Tsiaw5NThtcFACNqT9OsslOgTHzAwdfLj6ZQg3OoTGQH3QFZn5gJpPhMIy/rtUc1gIb7zCwscPV+dwg1lOPfZDJuCQP5gMvDz64WDP28AQKBfLDZI7USEs1IzSjUQWPAw6/tfxAMbPxgPvD+O9MaxSeDv08/iYeB2DCLn3HS6hsjLiVSsqT7zzeIuidK4UQeAx8MNIgZYUp5wHP5HivDV17K8O/ZwFDqge4zgVCjlMlvDx6s1rODx48XKtgsVisVaAmSb0j1oM3b3bG5auPikLF5JQaRhPxj/ZVIv5EtTl/O3NzWVlhquU0W0x3ifiwKBskB9+byhAvXA9gRTlSX0POsrRTz/+uMqaX+xVhZtFM6ekxQJT1VTKSuWRoReKZRMxK3Rh5RJ4Q8UWM6acSGyV1QU3vKaaxgf/q5JC27IhppinjVkrZspnHzH13a9Yav8c3hMbe48xQV0nKWasqwtbwdfqWIG6GqnHadBml9a/nnb0hGqGDYs1q2Tu3GHWnFC7uCbxu5XoiZTwfgo01AYypXzfnFkqyPbZ3haT/SD2MkJ7AWeFdeCLJl8/lnkrBeB6+2+c7tusqeVnWFPLNmslZDesaeVXyDId1ioeicVt9uVnBW9FTdtqwh/TrrZTlqPiYWGnRVoD8Zi0bQvmU8NmFNqu0GpZdJbyN6L/DBmKTswQGyPFiQJCPEIM3k1h4Fvs2CMuKD3akml1s6yHcnzKOhOtHN67fVSJ5kLNwLvyEyx4T4RiZnlWDtsgvoPalOorh6pLdpjsLwrpRF6YXFuE1eLeBRMSzu4dKkshAp5dnF+c7cElMw7eKzymfD1jjnS37oPWshnCK80F2geTmsODF0d7T5ScuXZm7R5Oqv+wfG4W+hi89QGR9UWSeLkbSdx+QcxQurk3FH4/ZvR6r3D79KsVtqbfCrK76XfdfscxZpu95cyl146ZpqTr0JblaWB5Lpehng6kgt/LQCAumErQfgcfrs7tACx9wqPod60O97s6w6eZeXIq8Y2q9Wxx2sH+GfNjvoW8x6Xr9kvrlFBkXHerlRair1n6mqWvWfqapa9Z+pqlr1n6mqWvWfqapa9Z+prlkWqWrRFJONkKSSWkG5NCQULonQeJa5QSDVwa7cKW2IYNIN9klNeb1PaCNmA3cIBzlOS563agp1M0yNvbreFcC3QI8ztyF+VxqdZGWs6WOZPDRGdxYeMFTlie2zjL89hiUhjhlnGgc389/t7jT9tc2LxwOEqYw5k2nTx3E3p70Eu0CuVg7VBZoudehtXBn9qZlyeKdNYxVzT5WoEeOkLWohiEBZRiJibSn4GEoLOazezc/Ct7git/9If4glcG2R3Xi+2uYFaNR5Na445TbGm34WioP4dPDlA1q3aSH+/A+9k9cT5DuGJuw0l8LNEjE9C1gzwtTJedqgVQi2CsHB2aTKhyx7w8G+80WfUcjQvXNGiuXh0MdhqY0t5Q/tDh7z/kslYXJsFRNWBTqx3cP+GR+G/Iof2K2GbRdHF/K9F8zXWB8ozY+qqId4UhnP1WiDmTGNyCPKFQwlVxINjemq+y/nJh/qxuE2izOmzvCQi5IX3Lafj+CLiYCWerxNL4uwrlAKtD+lrs6LxoI85uvl0zM9ra0YY7Ni1Ef9Omv2nT37T5y9602RIdFLpNsaEB7iNDHxn6yPB3iwyh3h9NEVurTjVwHxn6yNBHhr9sZLiUzE21yeANbli9yEssxYLW0m8Ls329rWoZnN44RQaBaP0Fnkz42612QNiJ0Xdo2Aw9vtSXtToR/uJEuUD/4GLOy/71gj4+9vGxj487yZyqle1XzOLGDKqbPG3Jm+oP/9TvrMMi1as7sx4TrrxT+JgWciqkDODysu5Nva+wwKTVcKf0QlEQqa7hPkXUkAKVa19TrkO7QsiLiRTJ2q+D8bM8h/Dug9+8qksnDszAuXJG8yIJt+pskefaOCgsTQcWLTyj7+BwNoRXhgl1YxChZjRh9gibYnuwSNGUYgp3mEeMc4PW+hNm5cgjwUm85HlszoQkzp9oIbRBU3PXoIXpSlj4sxUshAf/VIDvA2Wfb3+g4kNOGnj5onbb1YcNJqVekAJxqk046XN4dLStFZu6cusqjEH+Gwb4t3LQNQSsmKkhvNULnKMZ+F7hwj4FQ5YkmJPlZOxeZEUGEtXMpcGwVJN7Uujh0YvORd1yox3maKrZhoKhgkJ5IfEvpRLwXlj3Jz+7UbPg1gmtOnzbWwjlLf7z02o6oxgDGbN3yElANuw6ey2UPViS+DSnDPfhfYhyP5VctDpbYbhPAQWWYm/3s2DQjzCRS0CVmKVXrE+kIDc6NwIdM0uYE8PKr7pTYH5+SH0LG4KDP6BVXbq1hdzVOvwXVNS1rcoNSeMmbJ8/9vljnz/+xfLH252e+CD7CKjHOs7QMujrMNhpSFi3kT7iK3ybhRpqex68hZeS1ccPWgaZbZ3CWoE23W4hFCzS5eeopmlofHn27vT83c9jCsPj07N352en4+FTHYgrcr7xWbUmvH9W7f/vs2q3nwbR63DWvNQ1y3MpkhC8fg0G+ta5/CK8RnIc/Xx2E4UnUqPjKJ4fxtUbXHH1ilj8+/o51E/RILq+E/mKgrP7HBOHPLg9hc3o+PDg4NO//B8AAAD//w==
6
+ # DO NOT EDIT
7
+ require 'cgi'
8
+
9
+ module PayPalCheckoutSdk
10
+ module Payments
11
+
12
+ #
13
+ # Shows details for a captured payment, by ID.
14
+ #
15
+ class CapturesGetRequest
16
+ attr_accessor :path, :body, :headers, :verb
17
+
18
+ def initialize(capture_id)
19
+ @headers = {}
20
+ @body = nil
21
+ @verb = "GET"
22
+ @path = "/v2/payments/captures/{capture_id}?"
23
+
24
+ @path = @path.gsub("{capture_id}", CGI::escape(capture_id.to_s))
25
+ @headers["Content-Type"] = "application/json"
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,41 @@
1
+ # This class was generated on Mon, 27 Aug 2018 13:52:18 PDT by version 0.1.0-dev+904328-dirty of Braintree SDK Generator
2
+ # captures_refund_request.rb
3
+ # @version 0.1.0-dev+904328-dirty
4
+ # @type request
5
+ # @data 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
6
+ # DO NOT EDIT
7
+ require 'cgi'
8
+
9
+ module PayPalCheckoutSdk
10
+ module Payments
11
+
12
+ #
13
+ # Refunds a captured payment, by ID. For a full refund, include an empty payload in the JSON request body. For a partial refund, include an <code>amount</code> object in the JSON request body.
14
+ #
15
+ class CapturesRefundRequest
16
+ attr_accessor :path, :body, :headers, :verb
17
+
18
+ def initialize(capture_id)
19
+ @headers = {}
20
+ @body = nil
21
+ @verb = "POST"
22
+ @path = "/v2/payments/captures/{capture_id}/refund?"
23
+
24
+ @path = @path.gsub("{capture_id}", CGI::escape(capture_id.to_s))
25
+ @headers["Content-Type"] = "application/json"
26
+ end
27
+
28
+ def pay_pal_request_id(pay_pal_request_id)
29
+ @headers["PayPal-Request-Id"] = pay_pal_request_id
30
+ end
31
+
32
+ def prefer(prefer)
33
+ @headers["Prefer"] = prefer
34
+ end
35
+
36
+ def request_body(refundRequest)
37
+ @body = refundRequest
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,29 @@
1
+ # This class was generated on Mon, 27 Aug 2018 13:52:18 PDT by version 0.1.0-dev+904328-dirty of Braintree SDK Generator
2
+ # refunds_get_request.rb
3
+ # @version 0.1.0-dev+904328-dirty
4
+ # @type request
5
+ # @data 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
6
+ # DO NOT EDIT
7
+ require 'cgi'
8
+
9
+ module PayPalCheckoutSdk
10
+ module Payments
11
+
12
+ #
13
+ # Shows details for a refund, by ID.
14
+ #
15
+ class RefundsGetRequest
16
+ attr_accessor :path, :body, :headers, :verb
17
+
18
+ def initialize(refund_id)
19
+ @headers = {}
20
+ @body = nil
21
+ @verb = "GET"
22
+ @path = "/v2/payments/refunds/{refund_id}?"
23
+
24
+ @path = @path.gsub("{refund_id}", CGI::escape(refund_id.to_s))
25
+ @headers["Content-Type"] = "application/json"
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1 @@
1
+ require_relative './lib'
@@ -0,0 +1,13 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = 'paypal-checkout-sdk'
3
+ s.version = '1.0.1'
4
+ s.date = '2018-02-04'
5
+ s.summary = "This repository contains PayPal's Ruby SDK for Checkout REST API"
6
+ s.description = "This repository contains PayPal's Ruby SDK for Checkout REST API"
7
+ s.authors = ["http://developer.paypal.com"]
8
+ s.email = 'dl-paypal-checkout-api@paypal.com'
9
+ s.files = Dir.glob ["lib/**/*.{rb}", "spec/**/*", "*.gemspec"]
10
+ s.homepage =
11
+ 'https://github.com/paypal/Checkout-Ruby-SDK'
12
+ s.license = 'MIT'
13
+ end
@@ -0,0 +1,18 @@
1
+
2
+
3
+ require_relative '../test_harness'
4
+ require_relative '../../lib/lib'
5
+ require 'json'
6
+
7
+ include PayPalCheckoutSdk::Orders
8
+
9
+ describe OrdersAuthorizeRequest do
10
+
11
+ it 'successfully makes a request', :skip => 'This test is an example, in production, orders require payer approval' do
12
+ request = OrdersAuthorizeRequest.new("ORDER-ID")
13
+
14
+ resp = TestHarness::client.execute(request)
15
+ expect(resp.status_code).to eq(201)
16
+ expect(resp.result).not_to be_nil
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+
2
+
3
+ require_relative '../test_harness'
4
+ require_relative '../../lib/lib'
5
+ require 'json'
6
+
7
+ include PayPalCheckoutSdk::Orders
8
+
9
+ describe OrdersCaptureRequest do
10
+
11
+ it 'successfully makes a request' , :skip => 'This test is an example, in production, orders require payer approval' do
12
+ request = OrdersCaptureRequest.new("ORDER-ID")
13
+
14
+ resp = TestHarness::client.execute(request)
15
+ expect(resp.status_code).to eq(201)
16
+ expect(resp.result).not_to be_nil
17
+ end
18
+ end
@@ -0,0 +1,36 @@
1
+
2
+
3
+ require_relative '../test_harness'
4
+ require_relative './orders_helper'
5
+ require 'json'
6
+
7
+ include PayPalCheckoutSdk::Orders
8
+
9
+ describe OrdersCreateRequest do
10
+ it 'successfully makes a request' do
11
+
12
+ resp = OrdersHelper::create_order
13
+ expect(resp.status_code).to eq(201)
14
+ expect(resp.result).not_to be_nil
15
+ expect(resp.result.intent).to eq('CAPTURE')
16
+ expect(resp.result.purchase_units.count).to eq(1)
17
+ expect(resp.result.purchase_units[0].reference_id).to eq('test_ref_id1')
18
+ expect(resp.result.purchase_units[0].amount.currency_code).to eq('USD')
19
+ expect(resp.result.purchase_units[0].amount.value).to eq('100.00')
20
+
21
+ expect(resp.result.create_time).not_to be_nil
22
+ expect(resp.result.links).not_to be_nil
23
+ found_approve = false
24
+
25
+ for link in resp.result.links
26
+ if "approve" === link.rel
27
+ expect(link["href"]).not_to be_nil
28
+ expect(link["method"]).to eq("GET")
29
+ found_approve = true
30
+ end
31
+ end
32
+
33
+ expect(found_approve).to be_truthy
34
+ expect(resp.result.status).to eq('CREATED')
35
+ end
36
+ end
@@ -0,0 +1,37 @@
1
+
2
+
3
+ require_relative '../test_harness'
4
+ require_relative './orders_helper'
5
+ require 'json'
6
+
7
+ include PayPalCheckoutSdk::Orders
8
+
9
+ describe OrdersGetRequest do
10
+
11
+ it 'successfully makes a request' do
12
+ create_resp = OrdersHelper::create_order
13
+ request = OrdersGetRequest.new(create_resp.result.id)
14
+ resp = TestHarness::client.execute(request)
15
+ expect(resp.status_code).to eq(200)
16
+ expect(resp.result).not_to be_nil
17
+ expect(resp.result.intent).to eq('CAPTURE')
18
+ expect(resp.result.purchase_units.count).to eq(1)
19
+ expect(resp.result.purchase_units[0].reference_id).to eq('test_ref_id1')
20
+ expect(resp.result.purchase_units[0].amount.currency_code).to eq('USD')
21
+ expect(resp.result.purchase_units[0].amount.value).to eq('100.00')
22
+
23
+ expect(resp.result.create_time).not_to be_nil
24
+ expect(resp.result.links).not_to be_nil
25
+ found_approve = false
26
+
27
+ for link in resp.result.links
28
+ if "approve" === link.rel
29
+ expect(link["href"]).not_to be_nil
30
+ expect(link["method"]).to eq("GET")
31
+ found_approve = true
32
+ end
33
+ end
34
+ expect(found_approve).to be_truthy
35
+ expect(resp.result.status).to eq('CREATED')
36
+ end
37
+ end
@@ -0,0 +1,33 @@
1
+ require_relative '../test_harness'
2
+
3
+ include PayPalCheckoutSdk::Orders
4
+
5
+ module OrdersHelper
6
+ class << self
7
+ def create_order
8
+ body = {
9
+ intent: 'CAPTURE',
10
+ purchase_units: [{
11
+ reference_id: 'test_ref_id1',
12
+ amount: {
13
+ value: '100.00',
14
+ currency_code: 'USD'
15
+ }
16
+ }],
17
+ redirect_urls: {
18
+ cancel_url: 'https://example.com/cancel',
19
+ return_url: 'https://example.com/return'
20
+ }
21
+ }
22
+ request = OrdersCreateRequest.new()
23
+ request.prefer("return=representation")
24
+ request.request_body(body)
25
+
26
+ return TestHarness::client.execute(request)
27
+ end
28
+
29
+ def get_order(id)
30
+ return TestHarness::exec(OrdersGetRequest.new(id))
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,60 @@
1
+
2
+
3
+ require_relative '../test_harness'
4
+ require_relative './orders_helper'
5
+ require 'json'
6
+
7
+ include PayPalCheckoutSdk::Orders
8
+
9
+ describe OrdersPatchRequest do
10
+ def build_request_body
11
+ return [
12
+ {
13
+ "op": "add",
14
+ "path": "/purchase_units/@reference_id=='test_ref_id1'/description",
15
+ "value": "added_description"
16
+ },
17
+ {
18
+ "op": "replace",
19
+ "path": "/purchase_units/@reference_id=='test_ref_id1'/amount",
20
+ "value": {
21
+ "currency_code": "USD",
22
+ "value": "200.00"
23
+ }
24
+
25
+ }
26
+ ]
27
+ end
28
+
29
+ it 'successfully makes a request' do
30
+ create_resp = OrdersHelper::create_order
31
+ request = OrdersPatchRequest.new(create_resp.result.id)
32
+ request.request_body(build_request_body)
33
+
34
+ resp = TestHarness::client.execute(request)
35
+ expect(resp.status_code).to eq(204)
36
+ resp = OrdersHelper::get_order create_resp.result.id
37
+ expect(resp.status_code).to eq(200)
38
+ expect(resp.result).not_to be_nil
39
+ expect(resp.result.intent).to eq('CAPTURE')
40
+ expect(resp.result.purchase_units.count).to eq(1)
41
+ expect(resp.result.purchase_units[0].reference_id).to eq('test_ref_id1')
42
+ expect(resp.result.purchase_units[0].amount.currency_code).to eq('USD')
43
+ expect(resp.result.purchase_units[0].amount.value).to eq('200.00')
44
+ expect(resp.result.purchase_units[0].description).to eq('added_description')
45
+
46
+ expect(resp.result.create_time).not_to be_nil
47
+ expect(resp.result.links).not_to be_nil
48
+ found_approve = false
49
+
50
+ for link in resp.result.links
51
+ if "approve" === link.rel
52
+ expect(link["href"]).not_to be_nil
53
+ expect(link["method"]).to eq("GET")
54
+ found_approve = true
55
+ end
56
+ end
57
+ expect(found_approve).to be_truthy
58
+ expect(resp.result.status).to eq('CREATED')
59
+ end
60
+ end
@@ -0,0 +1,18 @@
1
+
2
+
3
+ require_relative '../test_harness'
4
+ require_relative '../../lib/lib'
5
+ require 'json'
6
+
7
+ include PayPalCheckoutSdk::Orders
8
+
9
+ describe OrdersValidateRequest do
10
+
11
+ it 'successfully makes a request' , :skip => 'This test is an example, in production, orders require payer approval' do
12
+ request = OrdersValidateRequest.new("ORDER-ID")
13
+
14
+ resp = TestHarness::client.execute(request)
15
+ expect(resp.status_code).to eq(200)
16
+ expect(resp.result).not_to be_nil
17
+ end
18
+ end