class MockChargebee::Models::Subscription
Constants
- RESOURCE_ID_PREFIX
Public Class Methods
cancel(id, params)
click to toggle source
# File lib/mock_chargebee/models/subscription.rb, line 51 def self.cancel(id, params) subscription = find(id) subscription.merge!(params.merge({ "status" => "cancelled", "canceled_at" => Time.now.to_i })) repositories.subscriptions.store(subscription["id"], subscription) subscription end
create(params)
click to toggle source
# File lib/mock_chargebee/models/subscription.rb, line 14 def self.create(params) Validations::Subscriptions::CreateParams.validate_required(params) params["id"] ||= unique_id customer_params = params.delete("customer") customer = Customer.create(customer_params) coupon_ids = params.delete("coupon_ids") params["coupons"] = Services::CouponsForSubscription.new(coupon_ids).call params["customer_id"] = customer["id"] subscription = subscription_fixture.merge(params) repositories.subscriptions.store(params["id"], subscription) [subscription, customer] end
create_for_customer(customer, params)
click to toggle source
# File lib/mock_chargebee/models/subscription.rb, line 33 def self.create_for_customer(customer, params) params["id"] ||= unique_id subscription = subscription_fixture.merge(params) subscription["customer_id"] = customer["id"] repositories.subscriptions.store(subscription["id"], subscription) subscription end
find(id)
click to toggle source
# File lib/mock_chargebee/models/subscription.rb, line 10 def self.find(id) repositories.subscriptions.fetch(id) end
reactivate(id, params)
click to toggle source
# File lib/mock_chargebee/models/subscription.rb, line 59 def self.reactivate(id, params) subscription = find(id) subscription.merge!(params.merge({ "status" => "active", "started_at" => Time.now.to_i })) repositories.subscriptions.store(subscription["id"], subscription) subscription end
update(id, params)
click to toggle source
# File lib/mock_chargebee/models/subscription.rb, line 43 def self.update(id, params) subscription = find(id) subscription.merge!(params) repositories.subscriptions.store(subscription["id"], subscription) subscription end