API Updates (#1040)

This commit is contained in:
pakrym-stripe 2022-03-28 12:42:32 -07:00 committed by GitHub
parent fc480cdb6c
commit 90fae49d64
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 78 additions and 0 deletions

View File

@ -5,6 +5,7 @@ module Stripe
class Charge < APIResource
extend Stripe::APIOperations::Create
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
OBJECT_NAME = "charge"
@ -19,5 +20,13 @@ module Stripe
opts: opts
)
end
def self.search(params = {}, opts = {})
_search("/v1/charges/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -6,6 +6,7 @@ module Stripe
extend Stripe::APIOperations::Create
include Stripe::APIOperations::Delete
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
extend Stripe::APIOperations::NestedResource
@ -48,5 +49,13 @@ module Stripe
resp, opts = execute_resource_request(:delete, resource_url + "/discount")
Util.convert_to_stripe_object(resp.data, opts)
end
def self.search(params = {}, opts = {})
_search("/v1/customers/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -6,6 +6,7 @@ module Stripe
extend Stripe::APIOperations::Create
include Stripe::APIOperations::Delete
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
OBJECT_NAME = "invoice"
@ -70,5 +71,13 @@ module Stripe
resp, opts = execute_resource_request(:get, resource_url + "/upcoming/lines", params, opts)
Util.convert_to_stripe_object(resp.data, opts)
end
def self.search(params = {}, opts = {})
_search("/v1/invoices/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -5,6 +5,7 @@ module Stripe
class PaymentIntent < APIResource
extend Stripe::APIOperations::Create
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
OBJECT_NAME = "payment_intent"
@ -49,5 +50,13 @@ module Stripe
opts: opts
)
end
def self.search(params = {}, opts = {})
_search("/v1/payment_intents/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -5,8 +5,17 @@ module Stripe
class Price < APIResource
extend Stripe::APIOperations::Create
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
OBJECT_NAME = "price"
def self.search(params = {}, opts = {})
_search("/v1/prices/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -6,8 +6,17 @@ module Stripe
extend Stripe::APIOperations::Create
include Stripe::APIOperations::Delete
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
OBJECT_NAME = "product"
def self.search(params = {}, opts = {})
_search("/v1/products/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -6,6 +6,7 @@ module Stripe
extend Stripe::APIOperations::Create
include Stripe::APIOperations::Delete
extend Stripe::APIOperations::List
extend Stripe::APIOperations::Search
include Stripe::APIOperations::Save
OBJECT_NAME = "subscription"
@ -22,5 +23,13 @@ module Stripe
end
save_nested_resource :source
def self.search(params = {}, opts = {})
_search("/v1/subscriptions/search", params, opts)
end
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
search(params, opts).auto_paging_each(&blk)
end
end
end

View File

@ -11,6 +11,21 @@ module Stripe
assert charges.data[0].is_a?(Stripe::Charge)
end
should "be searchable" do
charges = Stripe::Charge.search(query: 'currency:"USD"')
assert_requested :get, "#{Stripe.api_base}/v1/charges/search?query=currency:%22USD%22"
assert charges.total_count == 1
assert charges.data.is_a?(Array)
assert charges.data[0].is_a?(Stripe::Charge)
cnt = 0
charges.auto_paging_each do |c|
assert c.is_a?(Stripe::Charge)
cnt += 1
end
assert cnt == 1
end
should "be retrievable" do
charge = Stripe::Charge.retrieve("ch_123")
assert_requested :get, "#{Stripe.api_base}/v1/charges/ch_123"