Class: ItunesReceiptMock::Subscription
- Defined in:
- lib/itunes_receipt_mock/subscription.rb
Overview
ItunesReceiptMock::Subscription
Constant Summary collapse
- SUBSCRIPTION_DEFAULTS =
{ expires_date: nil, web_order_line_item_id: proc do receipt.transactions.next_web_order_line_item_id end }
Constants inherited from Purchase
Instance Attribute Summary collapse
-
#expires_date ⇒ Object
Returns the value of attribute expires_date.
-
#web_order_line_item_id ⇒ Object
Returns the value of attribute web_order_line_item_id.
Attributes inherited from Purchase
#in_app, #is_trial_period, #original_purchase_date, #original_transaction_id, #product_id, #purchase_date, #quantity, #receipt, #transaction_id
Instance Method Summary collapse
- #as_json ⇒ Object
-
#initialize(options) ⇒ Subscription
constructor
A new instance of Subscription.
- #renew(options) ⇒ Object
Constructor Details
#initialize(options) ⇒ Subscription
Returns a new instance of Subscription.
16 17 18 19 20 |
# File 'lib/itunes_receipt_mock/subscription.rb', line 16 def initialize() super send_defaults(SUBSCRIPTION_DEFAULTS, ) fail MissingArgumentError, 'expires_date is required' unless @expires_date end |
Instance Attribute Details
#expires_date ⇒ Object
Returns the value of attribute expires_date.
14 15 16 |
# File 'lib/itunes_receipt_mock/subscription.rb', line 14 def expires_date @expires_date end |
#web_order_line_item_id ⇒ Object
Returns the value of attribute web_order_line_item_id.
14 15 16 |
# File 'lib/itunes_receipt_mock/subscription.rb', line 14 def web_order_line_item_id @web_order_line_item_id end |
Instance Method Details
#as_json ⇒ Object
35 36 37 38 39 |
# File 'lib/itunes_receipt_mock/subscription.rb', line 35 def as_json super.merge( 'web_order_line_item_id' => web_order_line_item_id.to_s ).merge(date_attrs('expires', expires_date)) end |
#renew(options) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/itunes_receipt_mock/subscription.rb', line 22 def renew() attrs = { receipt: receipt, in_app: false, quantity: quantity, product_id: product_id, original_transaction_id: transaction_id, original_purchase_date: purchase_date, is_trial_period: is_trial_period }.merge() receipt.transactions.create attrs end |