stripe-ruby/test/stripe/subscription_schedule_test.rb
Olivier Bellone ec91de6849
Upgrade Rubocop and fix a bunch of issues (#786)
* Bump Rubocop to 0.57.2

* Style/StderrPuts: Use warn instead of .puts

* Style/ExpandPathArguments: Use expand_path('../test_helper', __dir__) instead of expand_path('../../test_helper', __FILE__)

* Style/Encoding: Unnecessary utf-8 encoding comment

* Style/StringLiterals: Prefer double-quoted strings

* Style/AccessModifierDeclarations

* Style/FormatStringToken: Prefer annotated tokens

* Naming/UncommunicativeMethodParamName

* Metrics/LineLength: set maximum line length to 100 characters

* Style/IfUnlessModifier: Favor modifier if usage when having a single-line body

* Style/ClassVars

* Metrics/LineLength: set maximum line length to 80 characters (default)

* Style/AccessModifierDeclarations: EnforcedStyle: inline
2019-05-24 10:43:42 -07:00

117 lines
4.4 KiB
Ruby

# frozen_string_literal: true
require ::File.expand_path("../test_helper", __dir__)
module Stripe
class SubscriptionScheduleTest < Test::Unit::TestCase
should "be listable" do
subscriptions = Stripe::SubscriptionSchedule.list
assert_requested :get, "#{Stripe.api_base}/v1/subscription_schedules"
assert subscriptions.data.is_a?(Array)
assert subscriptions.data[0].is_a?(Stripe::SubscriptionSchedule)
end
should "be retrievable" do
schedule = Stripe::SubscriptionSchedule.retrieve("sub_sched_123")
assert_requested :get,
"#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
should "be creatable" do
schedule = Stripe::SubscriptionSchedule.create(
customer: "cus_123"
)
assert_requested :post, "#{Stripe.api_base}/v1/subscription_schedules"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
should "be saveable" do
schedule = Stripe::SubscriptionSchedule.retrieve("sub_sched_123")
schedule.metadata["key"] = "value"
schedule.save
assert_requested :post,
"#{Stripe.api_base}/v1/subscription_schedules/#{schedule.id}"
end
should "be updateable" do
schedule = Stripe::SubscriptionSchedule.update("sub_sched_123", metadata: { foo: "bar" })
assert_requested :post,
"#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
context "#cancel" do
should "cancel a subscription schedule" do
schedule = Stripe::SubscriptionSchedule.retrieve("sub_sched_123")
schedule = schedule.cancel
assert_requested :post,
"#{Stripe.api_base}/v1/subscription_schedules/#{schedule.id}/cancel"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
end
context ".cancel" do
should "cancel a subscription schedule" do
schedule = Stripe::SubscriptionSchedule.cancel("sub_sched_123")
assert_requested :post,
"#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123/cancel"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
end
context "#release" do
should "release a subscription schedule" do
schedule = Stripe::SubscriptionSchedule.retrieve("sub_sched_123")
schedule = schedule.release
assert_requested :post,
"#{Stripe.api_base}/v1/subscription_schedules/#{schedule.id}/release"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
end
context ".release" do
should "release a subscription schedule" do
schedule = Stripe::SubscriptionSchedule.release("sub_sched_123")
assert_requested :post,
"#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123/release"
assert schedule.is_a?(Stripe::SubscriptionSchedule)
end
end
context "#revisions" do
should "retrieve the subscription schedule's revisions" do
schedule = Stripe::SubscriptionSchedule.retrieve("sub_sched_123")
revisions = schedule.revisions
assert_requested :get,
"#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123/revisions"
assert revisions.data.is_a?(Array)
assert revisions.data[0].is_a?(Stripe::SubscriptionScheduleRevision)
end
end
context "#retrieve_revision" do
should "retrieve a subscription schedule revision" do
revision = Stripe::SubscriptionSchedule.retrieve_revision(
"sub_sched_123",
"sub_sched_rev_123"
)
assert_requested :get, "#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123/revisions/sub_sched_rev_123"
assert revision.is_a?(Stripe::SubscriptionScheduleRevision)
end
end
context "#list_revisions" do
should "list a subscription schedule's revisions" do
revisions = Stripe::SubscriptionSchedule.list_revisions(
"sub_sched_123"
)
assert_requested :get, "#{Stripe.api_base}/v1/subscription_schedules/sub_sched_123/revisions"
assert revisions.is_a?(Stripe::ListObject)
assert revisions.data.is_a?(Array)
assert revisions.data[0].is_a?(Stripe::SubscriptionScheduleRevision)
end
end
end
end