diff options
-rw-r--r-- | app/models/track_mailer.rb | 6 | ||||
-rw-r--r-- | spec/models/track_mailer_spec.rb | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/app/models/track_mailer.rb b/app/models/track_mailer.rb index 85b1fedd8..0c053c4ad 100644 --- a/app/models/track_mailer.rb +++ b/app/models/track_mailer.rb @@ -40,10 +40,11 @@ class TrackMailer < ApplicationMailer # Useful query to run by hand to see how many alerts are due: # User.find(:all, :conditions => [ "last_daily_track_email < ?", Time.now - 1.day ]).size def self.alert_tracks + done_something = false now = Time.now() users = User.find(:all, :conditions => [ "last_daily_track_email < ?", now - 1.day ]) if users.empty? - return false + return done_something end for user in users next if !user.should_be_emailed? @@ -116,8 +117,9 @@ class TrackMailer < ApplicationMailer user.last_daily_track_email = now user.no_xapian_reindex = true user.save! + done_something = true end - return true + return done_something end def self.alert_tracks_loop diff --git a/spec/models/track_mailer_spec.rb b/spec/models/track_mailer_spec.rb index 6612641c1..67a64ee10 100644 --- a/spec/models/track_mailer_spec.rb +++ b/spec/models/track_mailer_spec.rb @@ -45,6 +45,9 @@ describe TrackMailer do @user.should_receive(:save!) TrackMailer.alert_tracks end + it 'should return true' do + TrackMailer.alert_tracks.should == true + end describe 'for each tracked thing' do @@ -139,6 +142,9 @@ describe TrackMailer do @user.should_not_receive(:save!) TrackMailer.alert_tracks end + it 'should return false' do + TrackMailer.alert_tracks.should == false + end end end |