From ad00c3e6212354ebb98222875e1787b22edd5440 Mon Sep 17 00:00:00 2001 From: "stripe-openapi[bot]" <105521251+stripe-openapi[bot]@users.noreply.github.com> Date: Thu, 14 Mar 2024 11:58:37 -0700 Subject: [PATCH 1/2] Update generated code (#1359) * Update generated code for v872 * Update generated code for v878 --- OPENAPI_VERSION | 2 +- lib/stripe/object_types.rb | 2 + lib/stripe/resources.rb | 2 + .../issuing/personalization_design.rb | 119 ++++++++++++++++++ .../resources/issuing/physical_bundle.rb | 26 ++++ test/stripe/generated_examples_test.rb | 43 +++++++ 6 files changed, 193 insertions(+), 1 deletion(-) create mode 100644 lib/stripe/resources/issuing/personalization_design.rb create mode 100644 lib/stripe/resources/issuing/physical_bundle.rb diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION index 2e1dc524..0963e32f 100644 --- a/OPENAPI_VERSION +++ b/OPENAPI_VERSION @@ -1 +1 @@ -v841 \ No newline at end of file +v878 \ No newline at end of file diff --git a/lib/stripe/object_types.rb b/lib/stripe/object_types.rb index 86b36e8f..07d7b823 100644 --- a/lib/stripe/object_types.rb +++ b/lib/stripe/object_types.rb @@ -63,6 +63,8 @@ module Stripe Issuing::Card.object_name => Issuing::Card, Issuing::Cardholder.object_name => Issuing::Cardholder, Issuing::Dispute.object_name => Issuing::Dispute, + Issuing::PersonalizationDesign.object_name => Issuing::PersonalizationDesign, + Issuing::PhysicalBundle.object_name => Issuing::PhysicalBundle, Issuing::Token.object_name => Issuing::Token, Issuing::Transaction.object_name => Issuing::Transaction, LineItem.object_name => LineItem, diff --git a/lib/stripe/resources.rb b/lib/stripe/resources.rb index 024ba1f9..f3c03d1f 100644 --- a/lib/stripe/resources.rb +++ b/lib/stripe/resources.rb @@ -51,6 +51,8 @@ require "stripe/resources/issuing/authorization" require "stripe/resources/issuing/card" require "stripe/resources/issuing/cardholder" require "stripe/resources/issuing/dispute" +require "stripe/resources/issuing/personalization_design" +require "stripe/resources/issuing/physical_bundle" require "stripe/resources/issuing/token" require "stripe/resources/issuing/transaction" require "stripe/resources/line_item" diff --git a/lib/stripe/resources/issuing/personalization_design.rb b/lib/stripe/resources/issuing/personalization_design.rb new file mode 100644 index 00000000..37d00f50 --- /dev/null +++ b/lib/stripe/resources/issuing/personalization_design.rb @@ -0,0 +1,119 @@ +# File generated from our OpenAPI spec +# frozen_string_literal: true + +module Stripe + module Issuing + # A Personalization Design is a logical grouping of a Physical Bundle, card logo, and carrier text that represents a product line. + class PersonalizationDesign < APIResource + extend Stripe::APIOperations::Create + extend Stripe::APIOperations::List + include Stripe::APIOperations::Save + + OBJECT_NAME = "issuing.personalization_design" + def self.object_name + "issuing.personalization_design" + end + + # Creates a personalization design object. + def self.create(params = {}, opts = {}) + request_stripe_object( + method: :post, + path: "/v1/issuing/personalization_designs", + params: params, + opts: opts + ) + end + + # Returns a list of personalization design objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first. + def self.list(filters = {}, opts = {}) + request_stripe_object( + method: :get, + path: "/v1/issuing/personalization_designs", + params: filters, + opts: opts + ) + end + + # Updates a card personalization object. + def self.update(id, params = {}, opts = {}) + request_stripe_object( + method: :post, + path: format("/v1/issuing/personalization_designs/%s", { id: CGI.escape(id) }), + params: params, + opts: opts + ) + end + + def test_helpers + TestHelpers.new(self) + end + + class TestHelpers < APIResourceTestHelpers + RESOURCE_CLASS = PersonalizationDesign + def self.resource_class + "PersonalizationDesign" + end + + # Updates the status of the specified testmode personalization design object to active. + def self.activate(personalization_design, params = {}, opts = {}) + request_stripe_object( + method: :post, + path: format("/v1/test_helpers/issuing/personalization_designs/%s/activate", { personalization_design: CGI.escape(personalization_design) }), + params: params, + opts: opts + ) + end + + # Updates the status of the specified testmode personalization design object to active. + def activate(params = {}, opts = {}) + @resource.request_stripe_object( + method: :post, + path: format("/v1/test_helpers/issuing/personalization_designs/%s/activate", { personalization_design: CGI.escape(@resource["id"]) }), + params: params, + opts: opts + ) + end + + # Updates the status of the specified testmode personalization design object to inactive. + def self.deactivate(personalization_design, params = {}, opts = {}) + request_stripe_object( + method: :post, + path: format("/v1/test_helpers/issuing/personalization_designs/%s/deactivate", { personalization_design: CGI.escape(personalization_design) }), + params: params, + opts: opts + ) + end + + # Updates the status of the specified testmode personalization design object to inactive. + def deactivate(params = {}, opts = {}) + @resource.request_stripe_object( + method: :post, + path: format("/v1/test_helpers/issuing/personalization_designs/%s/deactivate", { personalization_design: CGI.escape(@resource["id"]) }), + params: params, + opts: opts + ) + end + + # Updates the status of the specified testmode personalization design object to rejected. + def self.reject(personalization_design, params = {}, opts = {}) + request_stripe_object( + method: :post, + path: format("/v1/test_helpers/issuing/personalization_designs/%s/reject", { personalization_design: CGI.escape(personalization_design) }), + params: params, + opts: opts + ) + end + + # Updates the status of the specified testmode personalization design object to rejected. + def reject(params = {}, opts = {}) + @resource.request_stripe_object( + method: :post, + path: format("/v1/test_helpers/issuing/personalization_designs/%s/reject", { personalization_design: CGI.escape(@resource["id"]) }), + params: params, + opts: opts + ) + end + end + end + end +end diff --git a/lib/stripe/resources/issuing/physical_bundle.rb b/lib/stripe/resources/issuing/physical_bundle.rb new file mode 100644 index 00000000..890eab76 --- /dev/null +++ b/lib/stripe/resources/issuing/physical_bundle.rb @@ -0,0 +1,26 @@ +# File generated from our OpenAPI spec +# frozen_string_literal: true + +module Stripe + module Issuing + # A Physical Bundle represents the bundle of physical items - card stock, carrier letter, and envelope - that is shipped to a cardholder when you create a physical card. + class PhysicalBundle < APIResource + extend Stripe::APIOperations::List + + OBJECT_NAME = "issuing.physical_bundle" + def self.object_name + "issuing.physical_bundle" + end + + # Returns a list of physical bundle objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first. + def self.list(filters = {}, opts = {}) + request_stripe_object( + method: :get, + path: "/v1/issuing/physical_bundles", + params: filters, + opts: opts + ) + end + end + end +end diff --git a/test/stripe/generated_examples_test.rb b/test/stripe/generated_examples_test.rb index 10de5d90..f9260fb7 100644 --- a/test/stripe/generated_examples_test.rb +++ b/test/stripe/generated_examples_test.rb @@ -426,6 +426,10 @@ module Stripe Stripe::Customer.update_cash_balance("cus_123", { settings: { reconciliation_mode: "manual" } }) assert_requested :post, "#{Stripe.api_base}/v1/customers/cus_123/cash_balance" end + should "Test customers cash balance transactions get" do + Stripe::Customer.list_cash_balance_transactions("cus_123", { limit: 3 }) + assert_requested :get, "#{Stripe.api_base}/v1/customers/cus_123/cash_balance_transactions?limit=3" + end should "Test customers delete" do Stripe::Customer.delete("cus_xxxxxxxxxxxxx") assert_requested :delete, "#{Stripe.api_base}/v1/customers/cus_xxxxxxxxxxxxx?" @@ -895,6 +899,30 @@ module Stripe Stripe::Issuing::Dispute.submit("idp_xxxxxxxxxxxxx") assert_requested :post, "#{Stripe.api_base}/v1/issuing/disputes/idp_xxxxxxxxxxxxx/submit?" end + should "Test issuing personalization designs get" do + Stripe::Issuing::PersonalizationDesign.list + assert_requested :get, "#{Stripe.api_base}/v1/issuing/personalization_designs?" + end + should "Test issuing personalization designs get 2" do + Stripe::Issuing::PersonalizationDesign.retrieve("pd_xyz") + assert_requested :get, "#{Stripe.api_base}/v1/issuing/personalization_designs/pd_xyz?" + end + should "Test issuing personalization designs post" do + Stripe::Issuing::PersonalizationDesign.create({ physical_bundle: "pb_xyz" }) + assert_requested :post, "#{Stripe.api_base}/v1/issuing/personalization_designs" + end + should "Test issuing personalization designs post 2" do + Stripe::Issuing::PersonalizationDesign.update("pd_xyz") + assert_requested :post, "#{Stripe.api_base}/v1/issuing/personalization_designs/pd_xyz?" + end + should "Test issuing physical bundles get" do + Stripe::Issuing::PhysicalBundle.list + assert_requested :get, "#{Stripe.api_base}/v1/issuing/physical_bundles?" + end + should "Test issuing physical bundles get 2" do + Stripe::Issuing::PhysicalBundle.retrieve("pb_xyz") + assert_requested :get, "#{Stripe.api_base}/v1/issuing/physical_bundles/pb_xyz?" + end should "Test issuing transactions get" do Stripe::Issuing::Transaction.list({ limit: 3 }) assert_requested :get, "#{Stripe.api_base}/v1/issuing/transactions?limit=3" @@ -1921,6 +1949,21 @@ module Stripe Stripe::Issuing::Card::TestHelpers.ship_card("card_123") assert_requested :post, "#{Stripe.api_base}/v1/test_helpers/issuing/cards/card_123/shipping/ship?" end + should "Test test helpers issuing personalization designs activate post" do + Stripe::Issuing::PersonalizationDesign::TestHelpers.activate("pd_xyz") + assert_requested :post, "#{Stripe.api_base}/v1/test_helpers/issuing/personalization_designs/pd_xyz/activate?" + end + should "Test test helpers issuing personalization designs deactivate post" do + Stripe::Issuing::PersonalizationDesign::TestHelpers.deactivate("pd_xyz") + assert_requested :post, "#{Stripe.api_base}/v1/test_helpers/issuing/personalization_designs/pd_xyz/deactivate?" + end + should "Test test helpers issuing personalization designs reject post" do + Stripe::Issuing::PersonalizationDesign::TestHelpers.reject( + "pd_xyz", + { rejection_reasons: { card_logo: ["geographic_location"] } } + ) + assert_requested :post, "#{Stripe.api_base}/v1/test_helpers/issuing/personalization_designs/pd_xyz/reject" + end should "Test test helpers issuing transactions create force capture post" do Stripe::Issuing::Transaction::TestHelpers.create_force_capture({ amount: 100, From 3a51dfaba7fac2211a844c63f2af85db4eaad29d Mon Sep 17 00:00:00 2001 From: Ramya Rao Date: Thu, 14 Mar 2024 12:31:59 -0700 Subject: [PATCH 2/2] Bump version to 10.12.0 --- CHANGELOG.md | 10 ++++++++++ VERSION | 2 +- lib/stripe/version.rb | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fe251cbd..d4e7198b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,14 @@ # Changelog +## 10.12.0 - 2024-03-14 +* [#1359](https://github.com/stripe/stripe-ruby/pull/1359) Update generated code + * Add support for new resources `Issuing.PersonalizationDesign` and `Issuing.PhysicalBundle` + * Add support for `create`, `list`, `retrieve`, and `update` methods on resource `PersonalizationDesign` + * Add support for `list` and `retrieve` methods on resource `PhysicalBundle` +* [#1354](https://github.com/stripe/stripe-ruby/pull/1354) Refactor after SDK based generation pattern +* [#1347](https://github.com/stripe/stripe-ruby/pull/1347) Reorder methods with lexographical sort +* [#1355](https://github.com/stripe/stripe-ruby/pull/1355) Disable Metrics/ClassLength +* [#1351](https://github.com/stripe/stripe-ruby/pull/1351) Update CHANGELOG.md + ## 10.11.0 - 2024-02-29 * [#1348](https://github.com/stripe/stripe-ruby/pull/1348) Use sorbet gem instead of sorbet-static * [#1342](https://github.com/stripe/stripe-ruby/pull/1342) Update generated code diff --git a/VERSION b/VERSION index 72587022..c4d592e1 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -10.11.0 +10.12.0 diff --git a/lib/stripe/version.rb b/lib/stripe/version.rb index f41e1af7..9b59cd32 100644 --- a/lib/stripe/version.rb +++ b/lib/stripe/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module Stripe - VERSION = "10.11.0" + VERSION = "10.12.0" end