Browse Source

Including routes helper in a rake task is a rabbit hole

pull/566/head
baarkerlounger 3 years ago
parent
commit
e32bdcc61e
  1. 4
      lib/tasks/onboarding_emails.rake
  2. 2
      spec/lib/tasks/onboarding_emails_spec.rb

4
lib/tasks/onboarding_emails.rake

@ -1,5 +1,3 @@
include Rails.application.routes.url_helpers
namespace :onboarding_emails do namespace :onboarding_emails do
desc "Send onboarding emails to private beta users" desc "Send onboarding emails to private beta users"
task :send, %i[organisation_id host] => :environment do |_task, args| task :send, %i[organisation_id host] => :environment do |_task, args|
@ -12,7 +10,7 @@ namespace :onboarding_emails do
raise "Organisation #{organisation_id} does not exist" unless organisation raise "Organisation #{organisation_id} does not exist" unless organisation
organisation.users.each do |user| organisation.users.each do |user|
return unless URI::MailTo::EMAIL_REGEXP.match?(user.email) next unless URI::MailTo::EMAIL_REGEXP.match?(user.email)
onboarding_template_id = "b48bc2cd-5887-4611-8296-d0ab3ed0e7fd".freeze onboarding_template_id = "b48bc2cd-5887-4611-8296-d0ab3ed0e7fd".freeze
token = user.send(:set_reset_password_token) token = user.send(:set_reset_password_token)

2
spec/lib/tasks/onboarding_emails_spec.rb

@ -23,7 +23,7 @@ describe "rake onboarding_emails:send", type: task do
expect(notify_client).to receive(:send_email).with( expect(notify_client).to receive(:send_email).with(
{ {
email_address: user.email, email_address: user.email,
template_id: User::BETA_ONBOARDING_TEMPLATE_ID, template_id: "b48bc2cd-5887-4611-8296-d0ab3ed0e7fd",
personalisation: { personalisation: {
name: user.name, name: user.name,
link: "http://localhost:3000/account/password/edit?reset_password_token=#{reset_password_token}", link: "http://localhost:3000/account/password/edit?reset_password_token=#{reset_password_token}",

Loading…
Cancel
Save