Class: StripeMock::TestStrategies::Base
- Inherits:
-
Object
- Object
- StripeMock::TestStrategies::Base
- Defined in:
- lib/stripe_mock/test_strategies/base.rb
Instance Method Summary collapse
- #create_coupon(params = {}) ⇒ Object
- #create_coupon_params(params = {}) ⇒ Object
- #create_coupon_percent_of_params(params = {}) ⇒ Object
- #create_plan(params = {}) ⇒ Object
- #create_plan_params(params = {}) ⇒ Object
- #create_product(params = {}) ⇒ Object
- #create_product_params(params = {}) ⇒ Object
- #delete_all_coupons ⇒ Object
- #generate_bank_token(bank_account_params = {}) ⇒ Object
- #generate_card_token(card_params = {}) ⇒ Object
- #list_plans(limit) ⇒ Object
- #list_products(limit) ⇒ Object
- #list_subscriptions(limit) ⇒ Object
- #prepare_card_error ⇒ Object
- #retrieve_product(product_id) ⇒ Object
Instance Method Details
#create_coupon(params = {}) ⇒ Object
100 101 102 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 100 def create_coupon(params = {}) Stripe::Coupon.create create_coupon_params(params) end |
#create_coupon_params(params = {}) ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 76 def create_coupon_params(params = {}) currency = params[:currency] || StripeMock.default_currency { id: '10BUCKS', amount_off: 1000, currency: currency, max_redemptions: 100, metadata: { created_by: 'admin_acct_1' }, duration: 'once' }.merge(params) end |
#create_coupon_percent_of_params(params = {}) ⇒ Object
90 91 92 93 94 95 96 97 98 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 90 def create_coupon_percent_of_params(params = {}) { id: '25PERCENT', percent_off: 25, redeem_by: nil, duration_in_months: 3, duration: :repeating }.merge(params) end |
#create_plan(params = {}) ⇒ Object
30 31 32 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 30 def create_plan(params={}) Stripe::Plan.create create_plan_params(params) end |
#create_plan_params(params = {}) ⇒ Object
34 35 36 37 38 39 40 41 42 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 34 def create_plan_params(params={}) { :id => 'stripe_mock_default_plan_id', :interval => 'month', :currency => StripeMock.default_currency, :product => nil, # need to override yourself to pass validations :amount => 1337 }.merge(params) end |
#create_product(params = {}) ⇒ Object
9 10 11 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 9 def create_product(params = {}) Stripe::Product.create create_product_params(params) end |
#create_product_params(params = {}) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 13 def create_product_params(params={}) { :id => 'stripe_mock_default_product_id', :name => 'Default Product', :type => 'service' }.merge(params) end |
#delete_all_coupons ⇒ Object
104 105 106 107 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 104 def delete_all_coupons coupons = Stripe::Coupon.list coupons.data.map(&:delete) if coupons.data.count > 0 end |
#generate_bank_token(bank_account_params = {}) ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 59 def generate_bank_token(bank_account_params={}) currency = bank_account_params[:currency] || StripeMock.default_currency bank_account = { :country => "US", :currency => currency, :account_holder_name => "Jane Austen", :account_holder_type => "individual", :routing_number => "110000000", :account_number => "000123456789" }.merge(bank_account_params) bank_account[:fingerprint] = StripeMock::Util.fingerprint(bank_account[:account_number]) if StripeMock.state == 'local' stripe_token = Stripe::Token.create(:bank_account => bank_account) stripe_token.id end |
#generate_card_token(card_params = {}) ⇒ Object
50 51 52 53 54 55 56 57 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 50 def generate_card_token(card_params={}) card_data = { :number => "4242424242424242", :exp_month => 9, :exp_year => (Time.now.year + 5), :cvc => "999", :tokenization_method => nil } card = StripeMock::Util.card_merge(card_data, card_params) card[:fingerprint] = StripeMock::Util.fingerprint(card[:number]) if StripeMock.state == 'local' stripe_token = Stripe::Token.create(:card => card) stripe_token.id end |
#list_plans(limit) ⇒ Object
26 27 28 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 26 def list_plans(limit) Stripe::Plan.list(limit: limit) end |
#list_products(limit) ⇒ Object
5 6 7 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 5 def list_products(limit) Stripe::Product.list(limit: limit) end |
#list_subscriptions(limit) ⇒ Object
45 46 47 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 45 def list_subscriptions(limit) Stripe::Subscription.list(limit: limit) end |
#prepare_card_error ⇒ Object
109 110 111 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 109 def prepare_card_error StripeMock.prepare_card_error(:card_error, :new_customer) if StripeMock.state == 'local' end |
#retrieve_product(product_id) ⇒ Object
21 22 23 |
# File 'lib/stripe_mock/test_strategies/base.rb', line 21 def retrieve_product(product_id) Stripe::Product.retrieve(product_id) end |