mirror of
https://github.com/stripe/stripe-ruby.git
synced 2025-06-05 00:01:07 -04:00
Add support for Issuing resources
This commit is contained in:
parent
7c9492b37d
commit
04ae411754
@ -33,12 +33,12 @@ Metrics/LineLength:
|
||||
# Offense count: 32
|
||||
# Configuration parameters: CountComments.
|
||||
Metrics/MethodLength:
|
||||
Max: 48
|
||||
Max: 54
|
||||
|
||||
# Offense count: 1
|
||||
# Configuration parameters: CountComments.
|
||||
Metrics/ModuleLength:
|
||||
Max: 308
|
||||
Max: 314
|
||||
|
||||
# Offense count: 6
|
||||
# Configuration parameters: CountKeywordArgs.
|
||||
|
@ -18,7 +18,7 @@ sudo: false
|
||||
env:
|
||||
global:
|
||||
# If changing this number, please also change it in `test/test_helper.rb`.
|
||||
- STRIPE_MOCK_VERSION=0.19.0
|
||||
- STRIPE_MOCK_VERSION=0.23.0
|
||||
|
||||
cache:
|
||||
directories:
|
||||
|
@ -60,6 +60,12 @@ require "stripe/invoice"
|
||||
require "stripe/invoice_item"
|
||||
require "stripe/invoice_line_item"
|
||||
require "stripe/issuer_fraud_record"
|
||||
require "stripe/issuing/authorization"
|
||||
require "stripe/issuing/card"
|
||||
require "stripe/issuing/cardholder"
|
||||
require "stripe/issuing/card_details"
|
||||
require "stripe/issuing/dispute"
|
||||
require "stripe/issuing/transaction"
|
||||
require "stripe/login_link"
|
||||
require "stripe/order"
|
||||
require "stripe/order_return"
|
||||
|
22
lib/stripe/issuing/authorization.rb
Normal file
22
lib/stripe/issuing/authorization.rb
Normal file
@ -0,0 +1,22 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class Authorization < Stripe::APIResource
|
||||
extend Stripe::APIOperations::List
|
||||
include Stripe::APIOperations::Save
|
||||
|
||||
OBJECT_NAME = "issuing.authorization".freeze
|
||||
|
||||
def approve(params = {}, opts = {})
|
||||
resp, opts = request(:post, resource_url + "/approve", params, opts)
|
||||
initialize_from(resp.data, opts)
|
||||
end
|
||||
|
||||
def decline(params = {}, opts = {})
|
||||
resp, opts = request(:post, resource_url + "/decline", params, opts)
|
||||
initialize_from(resp.data, opts)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
18
lib/stripe/issuing/card.rb
Normal file
18
lib/stripe/issuing/card.rb
Normal file
@ -0,0 +1,18 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class Card < Stripe::APIResource
|
||||
extend Stripe::APIOperations::Create
|
||||
extend Stripe::APIOperations::List
|
||||
include Stripe::APIOperations::Save
|
||||
|
||||
OBJECT_NAME = "issuing.card".freeze
|
||||
|
||||
def details(params = {}, opts = {})
|
||||
resp, opts = request(:get, resource_url + "/details", params, opts)
|
||||
Util.convert_to_stripe_object(resp.data, opts)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
9
lib/stripe/issuing/card_details.rb
Normal file
9
lib/stripe/issuing/card_details.rb
Normal file
@ -0,0 +1,9 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class CardDetails < Stripe::StripeObject
|
||||
OBJECT_NAME = "issuing.card_details".freeze
|
||||
end
|
||||
end
|
||||
end
|
13
lib/stripe/issuing/cardholder.rb
Normal file
13
lib/stripe/issuing/cardholder.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class Cardholder < Stripe::APIResource
|
||||
extend Stripe::APIOperations::Create
|
||||
extend Stripe::APIOperations::List
|
||||
include Stripe::APIOperations::Save
|
||||
|
||||
OBJECT_NAME = "issuing.cardholder".freeze
|
||||
end
|
||||
end
|
||||
end
|
13
lib/stripe/issuing/dispute.rb
Normal file
13
lib/stripe/issuing/dispute.rb
Normal file
@ -0,0 +1,13 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class Dispute < Stripe::APIResource
|
||||
extend Stripe::APIOperations::Create
|
||||
extend Stripe::APIOperations::List
|
||||
include Stripe::APIOperations::Save
|
||||
|
||||
OBJECT_NAME = "issuing.dispute".freeze
|
||||
end
|
||||
end
|
||||
end
|
12
lib/stripe/issuing/transaction.rb
Normal file
12
lib/stripe/issuing/transaction.rb
Normal file
@ -0,0 +1,12 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class Transaction < Stripe::APIResource
|
||||
extend Stripe::APIOperations::List
|
||||
include Stripe::APIOperations::Save
|
||||
|
||||
OBJECT_NAME = "issuing.transaction".freeze
|
||||
end
|
||||
end
|
||||
end
|
@ -45,51 +45,57 @@ module Stripe
|
||||
ListObject::OBJECT_NAME => ListObject,
|
||||
|
||||
# business objects
|
||||
Account::OBJECT_NAME => Account,
|
||||
AlipayAccount::OBJECT_NAME => AlipayAccount,
|
||||
ApplePayDomain::OBJECT_NAME => ApplePayDomain,
|
||||
ApplicationFee::OBJECT_NAME => ApplicationFee,
|
||||
ApplicationFeeRefund::OBJECT_NAME => ApplicationFeeRefund,
|
||||
Balance::OBJECT_NAME => Balance,
|
||||
BalanceTransaction::OBJECT_NAME => BalanceTransaction,
|
||||
BankAccount::OBJECT_NAME => BankAccount,
|
||||
BitcoinReceiver::OBJECT_NAME => BitcoinReceiver,
|
||||
BitcoinTransaction::OBJECT_NAME => BitcoinTransaction,
|
||||
Card::OBJECT_NAME => Card,
|
||||
Charge::OBJECT_NAME => Charge,
|
||||
CountrySpec::OBJECT_NAME => CountrySpec,
|
||||
Coupon::OBJECT_NAME => Coupon,
|
||||
Customer::OBJECT_NAME => Customer,
|
||||
Dispute::OBJECT_NAME => Dispute,
|
||||
EphemeralKey::OBJECT_NAME => EphemeralKey,
|
||||
Event::OBJECT_NAME => Event,
|
||||
ExchangeRate::OBJECT_NAME => ExchangeRate,
|
||||
FileUpload::OBJECT_NAME => FileUpload,
|
||||
Invoice::OBJECT_NAME => Invoice,
|
||||
InvoiceItem::OBJECT_NAME => InvoiceItem,
|
||||
InvoiceLineItem::OBJECT_NAME => InvoiceLineItem,
|
||||
IssuerFraudRecord::OBJECT_NAME => IssuerFraudRecord,
|
||||
LoginLink::OBJECT_NAME => LoginLink,
|
||||
Order::OBJECT_NAME => Order,
|
||||
OrderReturn::OBJECT_NAME => OrderReturn,
|
||||
PaymentIntent::OBJECT_NAME => PaymentIntent,
|
||||
Payout::OBJECT_NAME => Payout,
|
||||
Plan::OBJECT_NAME => Plan,
|
||||
Product::OBJECT_NAME => Product,
|
||||
Recipient::OBJECT_NAME => Recipient,
|
||||
RecipientTransfer::OBJECT_NAME => RecipientTransfer,
|
||||
Refund::OBJECT_NAME => Refund,
|
||||
Reversal::OBJECT_NAME => Reversal,
|
||||
SKU::OBJECT_NAME => SKU,
|
||||
Source::OBJECT_NAME => Source,
|
||||
SourceTransaction::OBJECT_NAME => SourceTransaction,
|
||||
Subscription::OBJECT_NAME => Subscription,
|
||||
SubscriptionItem::OBJECT_NAME => SubscriptionItem,
|
||||
ThreeDSecure::OBJECT_NAME => ThreeDSecure,
|
||||
Token::OBJECT_NAME => Token,
|
||||
Topup::OBJECT_NAME => Topup,
|
||||
Transfer::OBJECT_NAME => Transfer,
|
||||
UsageRecord::OBJECT_NAME => UsageRecord,
|
||||
Account::OBJECT_NAME => Account,
|
||||
AlipayAccount::OBJECT_NAME => AlipayAccount,
|
||||
ApplePayDomain::OBJECT_NAME => ApplePayDomain,
|
||||
ApplicationFee::OBJECT_NAME => ApplicationFee,
|
||||
ApplicationFeeRefund::OBJECT_NAME => ApplicationFeeRefund,
|
||||
Balance::OBJECT_NAME => Balance,
|
||||
BalanceTransaction::OBJECT_NAME => BalanceTransaction,
|
||||
BankAccount::OBJECT_NAME => BankAccount,
|
||||
BitcoinReceiver::OBJECT_NAME => BitcoinReceiver,
|
||||
BitcoinTransaction::OBJECT_NAME => BitcoinTransaction,
|
||||
Card::OBJECT_NAME => Card,
|
||||
Charge::OBJECT_NAME => Charge,
|
||||
CountrySpec::OBJECT_NAME => CountrySpec,
|
||||
Coupon::OBJECT_NAME => Coupon,
|
||||
Customer::OBJECT_NAME => Customer,
|
||||
Dispute::OBJECT_NAME => Dispute,
|
||||
EphemeralKey::OBJECT_NAME => EphemeralKey,
|
||||
Event::OBJECT_NAME => Event,
|
||||
ExchangeRate::OBJECT_NAME => ExchangeRate,
|
||||
FileUpload::OBJECT_NAME => FileUpload,
|
||||
Invoice::OBJECT_NAME => Invoice,
|
||||
InvoiceItem::OBJECT_NAME => InvoiceItem,
|
||||
InvoiceLineItem::OBJECT_NAME => InvoiceLineItem,
|
||||
IssuerFraudRecord::OBJECT_NAME => IssuerFraudRecord,
|
||||
Issuing::Authorization::OBJECT_NAME => Issuing::Authorization,
|
||||
Issuing::Card::OBJECT_NAME => Issuing::Card,
|
||||
Issuing::CardDetails::OBJECT_NAME => Issuing::CardDetails,
|
||||
Issuing::Cardholder::OBJECT_NAME => Issuing::Cardholder,
|
||||
Issuing::Dispute::OBJECT_NAME => Issuing::Dispute,
|
||||
Issuing::Transaction::OBJECT_NAME => Issuing::Transaction,
|
||||
LoginLink::OBJECT_NAME => LoginLink,
|
||||
Order::OBJECT_NAME => Order,
|
||||
OrderReturn::OBJECT_NAME => OrderReturn,
|
||||
PaymentIntent::OBJECT_NAME => PaymentIntent,
|
||||
Payout::OBJECT_NAME => Payout,
|
||||
Plan::OBJECT_NAME => Plan,
|
||||
Product::OBJECT_NAME => Product,
|
||||
Recipient::OBJECT_NAME => Recipient,
|
||||
RecipientTransfer::OBJECT_NAME => RecipientTransfer,
|
||||
Refund::OBJECT_NAME => Refund,
|
||||
Reversal::OBJECT_NAME => Reversal,
|
||||
SKU::OBJECT_NAME => SKU,
|
||||
Source::OBJECT_NAME => Source,
|
||||
SourceTransaction::OBJECT_NAME => SourceTransaction,
|
||||
Subscription::OBJECT_NAME => Subscription,
|
||||
SubscriptionItem::OBJECT_NAME => SubscriptionItem,
|
||||
ThreeDSecure::OBJECT_NAME => ThreeDSecure,
|
||||
Token::OBJECT_NAME => Token,
|
||||
Topup::OBJECT_NAME => Topup,
|
||||
Transfer::OBJECT_NAME => Transfer,
|
||||
UsageRecord::OBJECT_NAME => UsageRecord,
|
||||
}
|
||||
end
|
||||
|
||||
|
@ -38,6 +38,8 @@ module Stripe
|
||||
OBJECT_NAME = "mainresource".freeze
|
||||
nested_resource_class_methods :nested,
|
||||
operations: %i[create retrieve update delete list]
|
||||
|
||||
OBJECT_NAME = "mainresource".freeze
|
||||
end
|
||||
|
||||
should "define a create method" do
|
||||
|
50
test/stripe/issuing/authorization_test.rb
Normal file
50
test/stripe/issuing/authorization_test.rb
Normal file
@ -0,0 +1,50 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require File.expand_path("../../../test_helper", __FILE__)
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class AuthorizationTest < Test::Unit::TestCase
|
||||
should "be listable" do
|
||||
authorizations = Stripe::Issuing::Authorization.list
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/authorizations"
|
||||
assert authorizations.data.is_a?(Array)
|
||||
assert authorizations.data[0].is_a?(Stripe::Issuing::Authorization)
|
||||
end
|
||||
|
||||
should "be retrievable" do
|
||||
authorization = Stripe::Issuing::Authorization.retrieve("iauth_123")
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/authorizations/iauth_123"
|
||||
assert authorization.is_a?(Stripe::Issuing::Authorization)
|
||||
end
|
||||
|
||||
should "be saveable" do
|
||||
authorization = Stripe::Issuing::Authorization.retrieve("iauth_123")
|
||||
authorization.metadata["key"] = "value"
|
||||
authorization.save
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/authorizations/#{authorization.id}"
|
||||
assert authorization.is_a?(Stripe::Issuing::Authorization)
|
||||
end
|
||||
|
||||
should "be updateable" do
|
||||
authorization = Stripe::Issuing::Authorization.update("iauth_123", metadata: { foo: "bar" })
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/authorizations/iauth_123"
|
||||
assert authorization.is_a?(Stripe::Issuing::Authorization)
|
||||
end
|
||||
|
||||
should "be approveable" do
|
||||
authorization = Stripe::Issuing::Authorization.retrieve("iauth_123")
|
||||
authorization.approve
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/authorizations/iauth_123/approve"
|
||||
assert authorization.is_a?(Stripe::Issuing::Authorization)
|
||||
end
|
||||
|
||||
should "be declineable" do
|
||||
authorization = Stripe::Issuing::Authorization.retrieve("iauth_123")
|
||||
authorization.decline
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/authorizations/iauth_123/decline"
|
||||
assert authorization.is_a?(Stripe::Issuing::Authorization)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
53
test/stripe/issuing/card_test.rb
Normal file
53
test/stripe/issuing/card_test.rb
Normal file
@ -0,0 +1,53 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require File.expand_path("../../../test_helper", __FILE__)
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class CardTest < Test::Unit::TestCase
|
||||
should "be creatable" do
|
||||
card = Stripe::Issuing::Card.create(
|
||||
currency: "usd",
|
||||
type: "physical"
|
||||
)
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/cards"
|
||||
assert card.is_a?(Stripe::Issuing::Card)
|
||||
end
|
||||
|
||||
should "be listable" do
|
||||
cards = Stripe::Issuing::Card.list
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/cards"
|
||||
assert cards.data.is_a?(Array)
|
||||
assert cards.data[0].is_a?(Stripe::Issuing::Card)
|
||||
end
|
||||
|
||||
should "be retrievable" do
|
||||
card = Stripe::Issuing::Card.retrieve("ic_123")
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/cards/ic_123"
|
||||
assert card.is_a?(Stripe::Issuing::Card)
|
||||
end
|
||||
|
||||
should "be saveable" do
|
||||
card = Stripe::Issuing::Card.retrieve("ic_123")
|
||||
card.metadata["key"] = "value"
|
||||
card.save
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/cards/ic_123"
|
||||
assert card.is_a?(Stripe::Issuing::Card)
|
||||
end
|
||||
|
||||
should "be updateable" do
|
||||
card = Stripe::Issuing::Card.update("ic_123", metadata: { foo: "bar" })
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/cards/ic_123"
|
||||
assert card.is_a?(Stripe::Issuing::Card)
|
||||
end
|
||||
|
||||
should "be able to retrieve card details" do
|
||||
card = Stripe::Issuing::Card.retrieve("ic_123")
|
||||
|
||||
card_details = card.details
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/cards/ic_123/details"
|
||||
assert card_details.is_a?(Stripe::Issuing::CardDetails)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
53
test/stripe/issuing/cardholder_test.rb
Normal file
53
test/stripe/issuing/cardholder_test.rb
Normal file
@ -0,0 +1,53 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require File.expand_path("../../../test_helper", __FILE__)
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class CardholderTest < Test::Unit::TestCase
|
||||
should "be creatable" do
|
||||
cardholder = Stripe::Issuing::Cardholder.create(
|
||||
billing: {
|
||||
address: {
|
||||
city: "city",
|
||||
country: "US",
|
||||
line1: "line1",
|
||||
postal_code: "postal_code",
|
||||
},
|
||||
},
|
||||
name: "Jenny Rosen",
|
||||
type: "individual"
|
||||
)
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/cardholders"
|
||||
assert cardholder.is_a?(Stripe::Issuing::Cardholder)
|
||||
end
|
||||
|
||||
should "be listable" do
|
||||
cardholders = Stripe::Issuing::Cardholder.list
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/cardholders"
|
||||
assert cardholders.data.is_a?(Array)
|
||||
assert cardholders.data[0].is_a?(Stripe::Issuing::Cardholder)
|
||||
end
|
||||
|
||||
should "be retrievable" do
|
||||
cardholder = Stripe::Issuing::Cardholder.retrieve("ich_123")
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/cardholders/ich_123"
|
||||
assert cardholder.is_a?(Stripe::Issuing::Cardholder)
|
||||
end
|
||||
|
||||
should "be saveable" do
|
||||
cardholder = Stripe::Issuing::Cardholder.retrieve("ich_123")
|
||||
cardholder.metadata["key"] = "value"
|
||||
cardholder.save
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/cardholders/#{cardholder.id}"
|
||||
assert cardholder.is_a?(Stripe::Issuing::Cardholder)
|
||||
end
|
||||
|
||||
should "be updateable" do
|
||||
cardholder = Stripe::Issuing::Cardholder.update("ich_123", metadata: { foo: "bar" })
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/cardholders/ich_123"
|
||||
assert cardholder.is_a?(Stripe::Issuing::Cardholder)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
45
test/stripe/issuing/dispute_test.rb
Normal file
45
test/stripe/issuing/dispute_test.rb
Normal file
@ -0,0 +1,45 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require File.expand_path("../../../test_helper", __FILE__)
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class DisputeTest < Test::Unit::TestCase
|
||||
should "be creatable" do
|
||||
dispute = Stripe::Issuing::Dispute.create(
|
||||
reason: "fraudulent",
|
||||
transaction: "ipi_123"
|
||||
)
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/disputes"
|
||||
assert dispute.is_a?(Stripe::Issuing::Dispute)
|
||||
end
|
||||
|
||||
should "be listable" do
|
||||
disputes = Stripe::Issuing::Dispute.list
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/disputes"
|
||||
assert disputes.data.is_a?(Array)
|
||||
assert disputes.data[0].is_a?(Stripe::Issuing::Dispute)
|
||||
end
|
||||
|
||||
should "be retrievable" do
|
||||
dispute = Stripe::Issuing::Dispute.retrieve("ich_123")
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/disputes/ich_123"
|
||||
assert dispute.is_a?(Stripe::Issuing::Dispute)
|
||||
end
|
||||
|
||||
should "be saveable" do
|
||||
dispute = Stripe::Issuing::Dispute.retrieve("ich_123")
|
||||
dispute.metadata["key"] = "value"
|
||||
dispute.save
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/disputes/#{dispute.id}"
|
||||
assert dispute.is_a?(Stripe::Issuing::Dispute)
|
||||
end
|
||||
|
||||
should "be updateable" do
|
||||
dispute = Stripe::Issuing::Dispute.update("ich_123", metadata: { foo: "bar" })
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/disputes/ich_123"
|
||||
assert dispute.is_a?(Stripe::Issuing::Dispute)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
48
test/stripe/issuing/transaction_test.rb
Normal file
48
test/stripe/issuing/transaction_test.rb
Normal file
@ -0,0 +1,48 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require File.expand_path("../../../test_helper", __FILE__)
|
||||
|
||||
module Stripe
|
||||
module Issuing
|
||||
class TransactionTest < Test::Unit::TestCase
|
||||
should "be listable" do
|
||||
stub_request(:get, "#{Stripe.api_base}/v1/issuing/transactions")
|
||||
.to_return(body: JSON.generate(object: "list", data: [{ id: "ipi_123", object: "issuing.transaction" }]))
|
||||
|
||||
transactions = Stripe::Issuing::Transaction.list
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/transactions"
|
||||
assert transactions.data.is_a?(Array)
|
||||
assert transactions.data[0].is_a?(Stripe::Issuing::Transaction)
|
||||
end
|
||||
|
||||
should "be retrievable" do
|
||||
stub_request(:get, "#{Stripe.api_base}/v1/issuing/transactions/ipi_123")
|
||||
.to_return(body: JSON.generate(id: "ipi_123", object: "issuing.transaction"))
|
||||
|
||||
transaction = Stripe::Issuing::Transaction.retrieve("ipi_123")
|
||||
assert_requested :get, "#{Stripe.api_base}/v1/issuing/transactions/ipi_123"
|
||||
assert transaction.is_a?(Stripe::Issuing::Transaction)
|
||||
end
|
||||
|
||||
should "be saveable" do
|
||||
stub_request(:post, "#{Stripe.api_base}/v1/issuing/transactions/ipi_123")
|
||||
.to_return(body: JSON.generate(id: "ipi_123", object: "issuing.transaction"))
|
||||
|
||||
transaction = Stripe::Issuing::Transaction.construct_from(id: "ipi_123", object: "issuing.transaction", metadata: {})
|
||||
transaction.metadata["key"] = "value"
|
||||
transaction.save
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/transactions/#{transaction.id}"
|
||||
assert transaction.is_a?(Stripe::Issuing::Transaction)
|
||||
end
|
||||
|
||||
should "be updateable" do
|
||||
stub_request(:post, "#{Stripe.api_base}/v1/issuing/transactions/ipi_123")
|
||||
.to_return(body: JSON.generate(id: "ipi_123", object: "issuing.transaction"))
|
||||
|
||||
transaction = Stripe::Issuing::Transaction.update("ipi_123", metadata: { foo: "bar" })
|
||||
assert_requested :post, "#{Stripe.api_base}/v1/issuing/transactions/ipi_123"
|
||||
assert transaction.is_a?(Stripe::Issuing::Transaction)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
@ -16,7 +16,7 @@ PROJECT_ROOT = File.expand_path("../../", __FILE__)
|
||||
require File.expand_path("../test_data", __FILE__)
|
||||
|
||||
# If changing this number, please also change it in `.travis.yml`.
|
||||
MOCK_MINIMUM_VERSION = "0.16.0".freeze
|
||||
MOCK_MINIMUM_VERSION = "0.23.0".freeze
|
||||
MOCK_PORT = ENV["STRIPE_MOCK_PORT"] || 12_111
|
||||
|
||||
# Disable all real network connections except those that are outgoing to
|
||||
|
Loading…
x
Reference in New Issue
Block a user