Skip to content
Browse files

Merge branch 'wc_email'

  • Loading branch information...
2 parents 02f399a + 4fd4f21 commit 4eee937adf92104695b213ae29335824871c11ce @RajRoR committed Mar 1, 2013
View
11 app/mailers/citizen_mailer.rb
@@ -0,0 +1,11 @@
+class CitizenMailer < ActionMailer::Base
+ default from: "avointesting@gmail.com"
+
+ def welcome_email(user, proposals, famous_ideas)
+ @f_ideas = famous_ideas
+ @user = user
+ @proposals = proposals
+ attachments.inline['email_logo.png'] = File.read("#{Rails.root}/app/assets/images/logo.png")
+ mail(:to => @user.email, :subject => "Welcome to AvoinMinisterio")
+ end
+end
View
8 app/models/citizen_observer.rb
@@ -0,0 +1,8 @@
+class CitizenObserver < ActiveRecord::Observer
+ def after_create(citizen)
+ famous_ideas = Idea.find(:all, :conditions => ["collecting_started='true' and collecting_ended='false' and (state='proposal' OR state='idea')"], :limit => 3, :order => "vote_for_count DESC")
+ ideas = Idea.find(:all, :conditions => ["state='proposal' and publish_state='published' and collecting_started='true' and collecting_ended='false'"], :limit => 6)
+ ideas.randomize!
+ CitizenMailer.welcome_email(citizen, ideas, famous_ideas).deliver
+ end
+end
View
540 app/views/citizen_mailer/welcome_email.html.erb
@@ -0,0 +1,540 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional //EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <title></title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <style type="text/css">
+ /* Mobile-specific Styles */
+ @media only screen and (max-device-width: 480px) {
+ table[class=w0], td[class=w0] { width: 0 !important; }
+ table[class=w10], td[class=w10], img[class=w10] { width:10px !important; }
+ table[class=w15], td[class=w15], img[class=w15] { width:5px !important; }
+ table[class=w30], td[class=w30], img[class=w30] { width:10px !important; }
+ table[class=w60], td[class=w60], img[class=w60] { width:10px !important; }
+ table[class=w125], td[class=w125], img[class=w125] { width:80px !important; }
+ table[class=w130], td[class=w130], img[class=w130] { width:55px !important; }
+ table[class=w140], td[class=w140], img[class=w140] { width:90px !important; }
+ table[class=w160], td[class=w160], img[class=w160] { width:180px !important; }
+ table[class=w170], td[class=w170], img[class=w170] { width:100px !important; }
+ table[class=w180], td[class=w180], img[class=w180] { width:80px !important; }
+ table[class=w195], td[class=w195], img[class=w195] { width:80px !important; }
+ table[class=w220], td[class=w220], img[class=w220] { width:80px !important; }
+ table[class=w240], td[class=w240], img[class=w240] { width:180px !important; }
+ table[class=w255], td[class=w255], img[class=w255] { width:185px !important; }
+ table[class=w275], td[class=w275], img[class=w275] { width:135px !important; }
+ table[class=w280], td[class=w280], img[class=w280] { width:135px !important; }
+ table[class=w300], td[class=w300], img[class=w300] { width:140px !important; }
+ table[class=w325], td[class=w325], img[class=w325] { width:95px !important; }
+ table[class=w360], td[class=w360], img[class=w360] { width:140px !important; }
+ table[class=w410], td[class=w410], img[class=w410] { width:180px !important; }
+ table[class=w470], td[class=w470], img[class=w470] { width:200px !important; }
+ table[class=w580], td[class=w580], img[class=w580] { width:280px !important; }
+ table[class=w640], td[class=w640], img[class=w640] { width:300px !important; }
+ table[class*=hide], td[class*=hide], img[class*=hide], p[class*=hide], span[class*=hide] { display:none !important; }
+ table[class=h0], td[class=h0] { height: 0 !important; }
+ p[class=footer-content-left] { text-align: center !important; }
+ #headline p { font-size: 30px !important; }
+ .article-content, #left-sidebar{ -webkit-text-size-adjust: 90% !important; -ms-text-size-adjust: 90% !important; }
+ .header-content, .footer-content-left {-webkit-text-size-adjust: 80% !important; -ms-text-size-adjust: 80% !important;}
+ img { height: auto; line-height: 100%;}
+ }
+ /* Client-specific Styles */
+ #outlook a { padding: 0; } /* Force Outlook to provide a "view in browser" button. */
+ body { width: 100% !important; }
+ .ReadMsgBody { width: 100%; }
+ .ExternalClass { width: 100%; display:block !important; } /* Force Hotmail to display emails at full width */
+ /* Reset Styles */
+ /* Add 100px so mobile switch bar doesn't cover street address. */
+ body { background-color: #ececec; margin: 0; padding: 0; }
+ img { outline: none; text-decoration: none; display: block;}
+ br, strong br, b br, em br, i br { line-height:100%; }
+ h1, h2, h3, h4, h5, h6 { line-height: 100% !important; -webkit-font-smoothing: antialiased; }
+ h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: blue !important; }
+ h1 a:active, h2 a:active, h3 a:active, h4 a:active, h5 a:active, h6 a:active { color: red !important; }
+ /* Preferably not the same color as the normal header link color. There is limited support for psuedo classes in email clients, this was added just for good measure. */
+ h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited { color: purple !important; }
+ /* Preferably not the same color as the normal header link color. There is limited support for psuedo classes in email clients, this was added just for good measure. */
+ table td, table tr { border-collapse: collapse; }
+ .yshortcuts, .yshortcuts a, .yshortcuts a:link,.yshortcuts a:visited, .yshortcuts a:hover, .yshortcuts a span {
+ color: black; text-decoration: none !important; border-bottom: none !important; background: none !important;
+ } /* Body text color for the New Yahoo. This example sets the font of Yahoo's Shortcuts to black. */
+ /* This most probably won't work in all email clients. Don't include <code _tmplitem="1062" > blocks in email. */
+ code {
+ white-space: normal;
+ word-break: break-all;
+ }
+ #background-table { background-color: #ececec; }
+ /* Webkit Elements */
+ #top-bar { border-radius:6px 6px 0px 0px; -moz-border-radius: 6px 6px 0px 0px; -webkit-border-radius:6px 6px 0px 0px; -webkit-font-smoothing: antialiased; background-color: #1a225c; color: #e7cba3; }
+ #top-bar a { font-weight: bold; color: #e7cba3; text-decoration: none;}
+ #footer { border-radius:0px 0px 6px 6px; -moz-border-radius: 0px 0px 6px 6px; -webkit-border-radius:0px 0px 6px 6px; -webkit-font-smoothing: antialiased; }
+ /* Fonts and Content */
+ body, td { font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; }
+ .header-content, .footer-content-left, .footer-content-right { -webkit-text-size-adjust: none; -ms-text-size-adjust: none; }
+ /* Prevent Webkit and Windows Mobile platforms from changing default font sizes on header and footer. */
+ .header-content { font-size: 12px; color: #e7cba3; }
+ .header-content a { font-weight: bold; color: #e7cba3; text-decoration: none; }
+ #headline p { color: #e7cba3; font-family: 'Helvetica Neue', Arial, Helvetica, Geneva, sans-serif; font-size: 36px; text-align: center; margin-top:0px; margin-bottom:30px; }
+ #headline p a { color: #e7cba3; text-decoration: none; }
+ #left-sidebar .toc-item { font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 12px; line-height: 16px; color: #00707b; margin-top: 0px; margin-bottom: 6px; }
+ #left-sidebar .toc-item a { color: #00707b; text-decoration: none; }
+ #left-sidebar .toc-heading { font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 11px; line-height: 15px; color:#9a9661; font-weight:bold; }
+ #left-sidebar .toc-heading a { color: #9a9661; text-decoration: none; }
+ #left-sidebar .left-column-heading { font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 11px; line-height:15px; color: #9a9661; font-weight:bold; }
+ #left-sidebar .left-column-heading a { color: #9a9661; text-decoration:none; }
+ #left-sidebar .left-column-subhead { font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 13px; line-height: 16px; color: #999999; font-weight: bold; margin-top: 0px; margin-bottom: 16px; }
+ #left-sidebar .left-column-subhead a { color: #999999; text-decoration:none; }
+ #left-sidebar .left-column-content { font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 12px; line-height: 16px; color: #9a9661; margin-top: 0px; margin-bottom: 16px; }
+ #left-sidebar .left-column-content a { color: #00707b; text-decoration: none; }
+ .article-title { font-size: 18px; line-height:24px; color: #9a9661; font-weight:bold; margin-top:0px; margin-bottom:18px; font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; }
+ .article-title a { color: #9a9661; text-decoration: none; }
+ .article-title.with-meta {margin-bottom: 0;}
+ .article-meta { font-size: 13px; line-height: 20px; color: #ccc; font-weight: bold; margin-top: 0;}
+ .article-content { font-size: 13px; line-height: 18px; color: #444444; margin-top: 0px; margin-bottom: 18px; font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; }
+ .article-content a { color: #00707b; font-weight:bold; text-decoration:none; }
+ .article-content img { max-width: 100% }
+ .article-content ol, .article-content ul { margin-top:0px; margin-bottom:18px; margin-left:19px; padding:0; }
+ .article-content li { font-size: 13px; line-height: 18px; color: #444444; }
+ .article-content li a { color: #00707b; text-decoration:underline; }
+ .article-content p {margin-bottom: 15px;}
+ .footer-content-left { font-size: 12px; line-height: 15px; color: #e2e2e2; margin-top: 0px; margin-bottom: 15px; }
+ .footer-content-left a { color: #e7cba3; font-weight: bold; text-decoration: none; }
+ .footer-content-right { font-size: 11px; line-height: 16px; color: #e2e2e2; margin-top: 0px; margin-bottom: 15px; }
+ .footer-content-right a { color: #e7cba3; font-weight: bold; text-decoration: none; }
+ #footer { background-color: #043948; color: #e2e2e2; }
+ #footer a { color: #e7cba3; text-decoration: none; font-weight: bold; }
+ #permission-reminder { white-space: normal; }
+ #street-address { color: #e7cba3; white-space: normal; }
+
+
+
+
+ </style>
+ <!--[if gte mso 9]>
+ <style _tmplitem="1062" >
+ .article-content ol, .article-content ul {
+ margin: 0 0 0 24px;
+ padding: 0;
+ list-style-position: inside;
+ }
+ </style>
+ <![endif]-->
+ </head>
+ <body>
+ <table width="100%" cellpadding="0" cellspacing="0" border="0" id="background-table">
+ <tbody>
+ <tr>
+ <td align="center" bgcolor="#ececec">
+ <table class="w640" style="margin:0 10px;" width="640" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w640" width="640" height="20">
+ </td>
+ </tr>
+ <tr>
+ <td class="w640" width="640">
+ <table id="top-bar" class="w640" width="640" cellpadding="0" cellspacing="0" border="0" bgcolor="#ffffff">
+ <tbody>
+ <tr>
+ <td class="w15" width="15">
+ </td>
+ <td class="w325" width="350" valign="middle" align="left">
+ <a href='<%= "#{root_url}" %>'></a>
+ </td>
+ <td class="w30" width="30">
+ </td>
+ <td class="w255" width="255" valign="middle" align="right">
+ <table class="w255" width="255" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w255" width="255" height="8">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ </tr>
+ </tbody>
+ </table>
+ <table class="w255" width="255" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w255" width="255" height="8">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ <td class="w15" width="15">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td id="header" class="w640" width="640" align="center" bgcolor="#ffffff">
+ <div align="center" style="text-align: center; width: 470px;">
+ <a href='<%= "#{root_url}" %>'><%= image_tag attachments['email_logo.png'].url -%>
+ </a>
+ </div>
+ <hr/>
+ </td>
+ </tr>
+ <tr id="twocolumn-content-row">
+ <td class="w640" width="640">
+ <table class="w640" width="640" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w15" width="15" bgcolor="#e2e2e2">
+ </td>
+ <td id="left-sidebar" class="w140" width="140" bgcolor="#e2e2e2" valign="top" align="left">
+ <table class="w140" width="140" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w140" width="140" height="15">
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140">
+ <p align="left" class="toc-heading">
+ <singleline>
+ A Lot To Do
+ </singleline>
+ </p>
+ <tableofcontents>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td width="3">
+ </td>
+ <td valign="top">
+ <p align="left" class="toc-item">
+ <li>
+ <a href='<%= "#{new_idea_url}" %>'>Create your own Ideas</a>
+ </li>
+ <li>
+ <a href='<%= "#{root_url}" %>'>Vote on Ideas you like</a>
+ </li>
+ <li>
+ <a href='<%= "#{root_url}" %>'>Comment on ideas</a>
+ </li>
+ <li>
+ <a href='<%= "#{root_url}" %>'>Scientific Questionnare</a>
+ </li>
+ </p>
+ </td>
+ <td width="6">
+ </td>
+ <td valign="top">
+ <p align="left" class="toc-item">
+ <strong>
+ <repeatertitle></strong>
+ </p>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </tableofcontents>
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140" height="15">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ <table class="w140" width="140" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w140" width="140" height="15">
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140">
+ <div align="left" class="left-column-heading">
+ <singleline label="Title">
+ Your Ideas can be Law
+ </singleline>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ <repeater>
+ <layout label="Text only">
+ <table class="w140" width="140" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w140" width="140" height="15">
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140">
+ <div align="left" class="left-column-heading">
+ <singleline label="Title">
+ We take your voice to the country
+ </singleline>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </layout>
+ <layout label="Text with image">
+ <table class="w140" width="140" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w140" width="140" height="15">
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140">
+ <p align="left" class="left-column-subhead">
+ <singleline label="Title">
+ </singleline>
+ </p>
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140">
+ <img editable="true" label="Image" width="140" class="w140" border="0">
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140" height="15">
+ </td>
+ </tr>
+ <tr>
+ <td class="w140" width="140">
+ <div align="left" class="left-column-content">
+ <multiline label="Description">
+ </multiline>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </layout>
+ </repeater>
+ </td>
+ <td class="w15" width="15" bgcolor="#e2e2e2">
+ </td>
+ <td class="w470" width="470" bgcolor="#ffffff" valign="top">
+ <table class="w470" width="470" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w470" width="470" height="30">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ <table class="w470" width="470" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w30" width="30">
+ </td>
+ <td class="w410" width="410">
+ <repeater>
+ <layout label="Text only">
+ <table class="w410" width="410" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w410" width="410">
+ <p align="left" class="article-title">
+ <singleline repeatertitle="true" label="Article Title">
+ Welcome to Avoin Ministerio
+ <br/>
+ <br/>
+ Following are few proposals seeking signature
+ </singleline>
+ </p>
+ <% @proposals.each_with_index do |proposal, index| %>
+ <div style="width:350px; border: solid purple; border-radius:12px;">
+ <div align="left" class="article-content" style='padding-left:3px' FONT FACE="symbol" style="width: ">
+ <multiline label="Description">
+ <b><%= link_to "#{proposal.title}", idea_url(proposal) %></b>
+ </multiline>
+ </div>
+ <div align="left" class="article-content" style='padding-left:3px'>
+ <multiline label="Description">
+ <%= h truncate(proposal.summary, :length =>150).html_safe %>
+ </multiline>
+ </div>
+ </div>
+ &nbsp;<% end %>
+ </td>
+ </tr>
+ <tr>
+ <td class="w410" width="410" height="10">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </layout>
+ <h3>You can participate in the scientific questionnaire, <a href='<%= "#{root_url}" %>'>Here </a></h3>
+ <layout label="Text with full-width image">
+ <table class="w410" width="410" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w410" width="410">
+ <p align="left" class="article-title">
+ <singleline repeatertitle="true" label="Article Title">
+ These are ideas getting popular now a days
+ </singleline>
+ </p>
+ </td>
+ </tr>
+ <tr>
+ <td class="w410" width="410">
+ <img editable="true" label="Image" class="w410" width="410" border="0">
+ </td>
+ </tr>
+ <tr>
+ <td class="w410" width="410" height="15">
+ </td>
+ </tr>
+ <tr>
+ <td class="w410" width="410">
+ <% @f_ideas.each_with_index do |famous, index| %>
+ <div style="width:350px; border: solid purple; border-radius:12px;">
+ <div align="left" class="article-content" style='padding-left:3px' FONT FACE="symbol" style="width: ">
+ <multiline label="Description">
+ <b><a href='<%= "#{idea_url(famous)}" %>'><%= famous.title %>(<%= famous.state %>)</a></b>
+ </multiline>
+ </div>
+ <div align="left" class="article-content" style='padding-left:3px;'>
+ <multiline label="Description">
+ <%= h truncate(famous.summary, :length => 150).html_safe %>
+ </multiline>
+ </div>
+ </div>
+ &nbsp;<% end %>
+ </td>
+ </tr>
+ <tr>
+ <td class="w410" width="410" height="10">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </layout>
+ <layout label="Image gallery">
+ <table class="w410" width="410" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w195" width="195" valign="top">
+ <table class="w195" width="195" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w195" width="195">
+ <img editable="true" label="Image" class="w195" width="195" border="0">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ <td width="20">
+ </td>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </layout>
+ </repeater>
+ </td>
+ <td class="w30" width="30">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td class="w640" width="640">
+ <table class="w640" width="640" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td class="w170" width="170" bgcolor="#e2e2e2" height="15">
+ </td>
+ <td class="w470" width="470" bgcolor="#ffffff" height="15">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td class="w640" width="640">
+ <table id="footer" class="w640" width="640" cellpadding="0" cellspacing="0" border="0" bgcolor="#043948">
+ <tbody>
+ <tr>
+ <td class="w30" width="30">
+ </td>
+ <td class="w580 h0" width="360" height="30">
+ </td>
+ <td class="w0" width="60">
+ </td>
+ <td class="w0" width="160">
+ </td>
+ <td class="w30" width="30">
+ </td>
+ </tr>
+ <tr>
+ <td class="w30" width="30">
+ </td>
+ <td class="w580" width="360" valign="top">
+ <span class="hide">
+ <p id="permission-reminder" align="left" class="footer-content-left">
+ </p>
+ </span>
+ <p align="left" class="footer-content-left">
+ <preferences lang="en">
+ <a href='<%= "#{root_url}" %>'>
+ AVOIN MINISTERIO
+ </preferences>
+ </a>
+ </p>
+ </td>
+ <td class="hide w0" width="60">
+ </td>
+ <td class="hide w0" width="160" valign="top">
+ <p id="street-address" align="right" class="footer-content-right">
+ </p>
+ </td>
+ <td class="w30" width="30">
+ </td>
+ </tr>
+ <tr>
+ <td class="w30" width="30">
+ </td>
+ <td class="w580 h0" width="360" height="15">
+ </td>
+ <td class="w0" width="60">
+ </td>
+ <td class="w0" width="160">
+ </td>
+ <td class="w30" width="30">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td class="w640" width="640" height="60">
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </body>
View
2 config/application.rb
@@ -23,7 +23,7 @@ class Application < Rails::Application
# config.plugins = [ :exception_notification, :ssl_requirement, :all ]
# Activate observers that should always be running.
- # config.active_record.observers = :cacher, :garbage_collector, :forum_observer
+ config.active_record.observers = :citizen_observer
# Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
# Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
View
14 spec/mailers/citizen_mailer_spec.rb
@@ -0,0 +1,14 @@
+require "spec_helper"
+
+describe CitizenMailer do
+ describe 'welcome_email' do
+ it "should send deliver an email" do
+ citizen = Factory.build(:citizen)
+ CitizenMailer.welcome_email(citizen, [], []).deliver
+ sent_email = ActionMailer::Base.deliveries.last
+
+ sent_email.subject.should == "Welcome to AvoinMinisterio"
+ sent_email.to.should == [citizen.email]
+ end
+ end
+end
View
13 spec/models/citizen_observer_spec.rb
@@ -0,0 +1,13 @@
+require 'spec_helper'
+
+describe CitizenObserver do
+ describe "after_create" do
+ it "should send a welcome email to most recently created user" do
+ citizen = FactoryGirl.create(:citizen)
+ sent_email = ActionMailer::Base.deliveries.last
+
+ sent_email.subject.should == "Welcome to AvoinMinisterio"
+ sent_email.to.should == [citizen.email]
+ end
+ end
+end

0 comments on commit 4eee937

Please sign in to comment.
Something went wrong with that request. Please try again.