From f626aea47d89aa6b81b0d0c10354d2b552848636 Mon Sep 17 00:00:00 2001 From: Mark Moser Date: Tue, 2 Aug 2016 11:30:03 -0500 Subject: [PATCH] reviewer mailers --- app/mailers/reviewer_mailer.rb | 15 +++++++++++++++ .../candidate_submission.html.erb | 18 ++++++++++++++++++ .../candidate_submission.text.erb | 5 +++++ test/fixtures/users.yml | 1 - .../previews/reviewer_mailer_preview.rb | 6 ++++++ test/mailers/reviewer_mailer_test.rb | 12 ++++++++++++ 6 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 app/mailers/reviewer_mailer.rb create mode 100644 app/views/reviewer_mailer/candidate_submission.html.erb create mode 100644 app/views/reviewer_mailer/candidate_submission.text.erb create mode 100644 test/mailers/previews/reviewer_mailer_preview.rb create mode 100644 test/mailers/reviewer_mailer_test.rb diff --git a/app/mailers/reviewer_mailer.rb b/app/mailers/reviewer_mailer.rb new file mode 100644 index 0000000..325df53 --- /dev/null +++ b/app/mailers/reviewer_mailer.rb @@ -0,0 +1,15 @@ +class ReviewerMailer < ApplicationMailer + def candidate_submission candidate + @candidate = candidate + + # TODO: candidate.reviewers.map(:email) + if Rails.env.production? + recipients = ["harish.bhavanichikar@perficient.com", "jacob.schulke@perficient.com", + "jennifer.siegfried@perficient.com", "martin.ridgway@perficient.com"] + else + recipients = ["fed.reviewer@mailinator.com"] + end + + mail to: recipients, subject: "Skills Assessment Results" + end +end diff --git a/app/views/reviewer_mailer/candidate_submission.html.erb b/app/views/reviewer_mailer/candidate_submission.html.erb new file mode 100644 index 0000000..6307b47 --- /dev/null +++ b/app/views/reviewer_mailer/candidate_submission.html.erb @@ -0,0 +1,18 @@ + + + + + + + + + + + +
+ SKILLS ASSESSMENT RESULTS +
+

<%= @candidate.test_hash %>

+

has completed the Skills Assesment Test.

+

You can review the results here: <%= link_to nil, review_test_url(@candidate.test_hash) %>

+
diff --git a/app/views/reviewer_mailer/candidate_submission.text.erb b/app/views/reviewer_mailer/candidate_submission.text.erb new file mode 100644 index 0000000..e3acb32 --- /dev/null +++ b/app/views/reviewer_mailer/candidate_submission.text.erb @@ -0,0 +1,5 @@ +SKILLS ASSESSMENT RESULTS + +<%= @candidate.test_hash %> +has completed the Skills Assesment Test. +You can review the results here: <%= review_test_url(@candidate.test_hash) %> diff --git a/test/fixtures/users.yml b/test/fixtures/users.yml index 54ff4ec..6b8ef4d 100644 --- a/test/fixtures/users.yml +++ b/test/fixtures/users.yml @@ -17,4 +17,3 @@ admin: email: alan.admin@mailinator.com password_digest: <%= BCrypt::Password.create("password", cost: 4) %> role: admin - diff --git a/test/mailers/previews/reviewer_mailer_preview.rb b/test/mailers/previews/reviewer_mailer_preview.rb new file mode 100644 index 0000000..bf08208 --- /dev/null +++ b/test/mailers/previews/reviewer_mailer_preview.rb @@ -0,0 +1,6 @@ +# Preview all emails at http://localhost:3000/rails/mailers/reviewer_mailer +class ReviewerMailerPreview < ActionMailer::Preview + def candidate_submission + ReviewerMailer.candidate_submission Candidate.find_by(test_hash: 'OvP0ZqGKwJ0') # Dawn + end +end diff --git a/test/mailers/reviewer_mailer_test.rb b/test/mailers/reviewer_mailer_test.rb new file mode 100644 index 0000000..807f992 --- /dev/null +++ b/test/mailers/reviewer_mailer_test.rb @@ -0,0 +1,12 @@ +require 'test_helper' + +class ReviewerMailerTest < ActionMailer::TestCase + test "candidate_submission" do + candidate = candidates :dawn + mail = ReviewerMailer.candidate_submission candidate + assert_match "Results", mail.subject + # assert_equal [candidate.recruiter.email], mail.to + assert_equal [ENV["default_mail_from"]], mail.from + assert_match candidate.test_hash, mail.body.encoded + end +end