Open maxgronlund opened 9 years ago
This problem has been fixed, and the new RSpec tests will be rolling out in over the next however many days, including all the Stripe and Payola type tests.
@maxgronlund , @benmanns , @kureikain , @stevecastaneda , @RailsApps/owners : This note replaced with my next comment
@maxgronlund , @benmanns , @kureikain , @stevecastaneda , @RailsApps/owners : Please see PR Testsformaster #150 . I invite you to pull this branch into your working app, and take it for a spin. If you can help resolve the four pending tests, that would be grand, thank you.
When I cancel a subscription for a user from the stripe dashboard https://dashboard.stripe.com/test/customers -> some customer
the webhook is called ok. but i get this error NameError - uninitialized constant Sale: config/initializers/payola line 5 sale = Sale.find_by(stripe_id: event.data.object.id)
The implementation example from https://github.com/peterkeen/payola/wiki/Configuration-options is slightly different
Payola.configure do |payola| payola.subscribe 'charge.succeeded' do |event| sale = Sale.find_by(stripe_id: event.data.object.id) SaleMailer.admin_receipt(sale.guid) end end
but gives the same error I have been looking in the schema and can see the schemas created by the payola gem
After following the tutorial to the letter, I downloaded the example code, same problem
from the log Started POST "/payola/events" for 127.0.0.1 at 2015-04-19 17:44:05 +0200 Processing by StripeEvent::WebhookController#event as XML Parameters: {"id"=>"evt_15tKaQDCWuUtTcRTD9eamfnc", "created"=>1429458238, "livemode"=>false, "type"=>"customer.subscription.deleted", "data"=>{"object"=>{"id"=>"sub_65VaQy74gn1TNn", "plan"=>{"interval"=>"month", "name"=>"Silver", "created"=>1429446273, "amount"=>999, "currency"=>"usd", "id"=>"silver", "object"=>"plan", "livemode"=>false, "interval_count"=>1, "trial_period_days"=>nil, "metadata"=>{}, "statement_descriptor"=>"digiramp silver"}, "object"=>"subscription", "start"=>1429458165, "status"=>"canceled", "customer"=>"cus_65Va0qmIcUkkwc", "cancel_at_period_end"=>false, "current_period_start"=>1429458165, "current_period_end"=>1432050165, "ended_at"=>1429458238, "trial_start"=>nil, "trial_end"=>nil, "canceled_at"=>1429458238, "quantity"=>1, "application_fee_percent"=>nil, "discount"=>nil, "tax_percent"=>nil, "metadata"=>{}}}, "object"=>"event", "pending_webhooks"=>1, "request"=>"iar_65VbHhLFx8k6AN", "api_version"=>"2015-04-07", "webhook"=>{"id"=>"evt_15tKaQDCWuUtTcRTD9eamfnc", "created"=>1429458238, "livemode"=>false, "type"=>"customer.subscription.deleted", "data"=>{"object"=>{"id"=>"sub_65VaQy74gn1TNn", "plan"=>{"interval"=>"month", "name"=>"Silver", "created"=>1429446273, "amount"=>999, "currency"=>"usd", "id"=>"silver", "object"=>"plan", "livemode"=>false, "interval_count"=>1, "trial_period_days"=>nil, "metadata"=>{}, "statement_descriptor"=>"digiramp silver"}, "object"=>"subscription", "start"=>1429458165, "status"=>"canceled", "customer"=>"cus_65Va0qmIcUkkwc", "cancel_at_period_end"=>false, "current_period_start"=>1429458165, "current_period_end"=>1432050165, "ended_at"=>1429458238, "trial_start"=>nil, "trial_end"=>nil, "canceled_at"=>1429458238, "quantity"=>1, "application_fee_percent"=>nil, "discount"=>nil, "tax_percent"=>nil, "metadata"=>{}}}, "object"=>"event", "pending_webhooks"=>1, "request"=>"iar_65VbHhLFx8k6AN", "api_version"=>"2015-04-07"}} Payola::StripeWebhook Exists (0.1ms) SELECT 1 AS one FROM "payola_stripe_webhooks" WHERE "payola_stripe_webhooks"."stripe_id" = ? LIMIT 1 ["stripe_id", "evt_15tKaQDCWuUtTcRTD9eamfnc"] begin transaction Payola::StripeWebhook Exists (0.1ms) SELECT 1 AS one FROM "payola_stripe_webhooks" WHERE "payola_stripe_webhooks"."stripe_id" = 'evt_15tKaQDCWuUtTcRTD9eamfnc' LIMIT 1 SQL (0.2ms) INSERT INTO "payola_stripe_webhooks" ("stripe_id", "created_at", "updated_at") VALUES (?, ?, ?) ["stripe_id", "evt_15tKaQDCWuUtTcRTD9eamfnc"], ["created_at", "2015-04-19 15:44:05.761740"], ["updated_at", "2015-04-19 15:44:05.761740"] commit transaction Completed 500 Internal Server Error in 1327ms (ActiveRecord: 2.8ms)
NameError - uninitialized constant Sale: activesupport (4.2.1) lib/active_support/dependencies.rb:533:in
load_missing_constant' activesupport (4.2.1) lib/active_support/dependencies.rb:184:in
const_missing' config/initializers/payola.rb:5:in `block (2 levels) in <top (required)>'