Class: Stripe::TestHelpers::TestClock
- Inherits:
-
APIResource
- Object
- StripeObject
- APIResource
- Stripe::TestHelpers::TestClock
- Extended by:
- APIOperations::Create, APIOperations::List
- Includes:
- APIOperations::Delete
- Defined in:
- lib/stripe/resources/test_helpers/test_clock.rb
Overview
A test clock enables deterministic control over objects in testmode. With a test clock, you can create objects at a frozen time in the past or future, and advance to a specific future time to observe webhooks and state changes. After the clock advances, you can either validate the current state of your scenario (and test your assumptions), change the current state of your scenario (and test more complex scenarios), or keep advancing forward in time.
Constant Summary collapse
- OBJECT_NAME =
"test_helpers.test_clock"
Constants inherited from StripeObject
StripeObject::RESERVED_FIELD_NAMES
Instance Attribute Summary
Attributes inherited from APIResource
Class Method Summary collapse
-
.advance(test_clock, params = {}, opts = {}) ⇒ Object
Starts advancing a test clock to a specified time in the future.
Instance Method Summary collapse
-
#advance(params = {}, opts = {}) ⇒ Object
Starts advancing a test clock to a specified time in the future.
Methods included from APIOperations::Create
Methods included from APIOperations::List
Methods included from APIOperations::Delete
Methods inherited from APIResource
class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource
Methods included from APIOperations::Request
Methods inherited from StripeObject
#==, #[], #[]=, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values
Constructor Details
This class inherits a constructor from Stripe::StripeObject
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject
Class Method Details
.advance(test_clock, params = {}, opts = {}) ⇒ Object
Starts advancing a test clock to a specified time in the future. Advancement is done when status changes to Ready.
27 28 29 30 31 32 33 34 |
# File 'lib/stripe/resources/test_helpers/test_clock.rb', line 27 def self.advance(test_clock, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/test_helpers/test_clocks/%<test_clock>s/advance", { test_clock: CGI.escape(test_clock) }), params: params, opts: opts ) end |
Instance Method Details
#advance(params = {}, opts = {}) ⇒ Object
Starts advancing a test clock to a specified time in the future. Advancement is done when status changes to Ready.
17 18 19 20 21 22 23 24 |
# File 'lib/stripe/resources/test_helpers/test_clock.rb', line 17 def advance(params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/test_helpers/test_clocks/%<test_clock>s/advance", { test_clock: CGI.escape(self["id"]) }), params: params, opts: opts ) end |