diff --git a/app/models/issue.rb b/app/models/issue.rb index cbd262800..618c5597d 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -215,7 +215,7 @@ class Issue < ActiveRecord::Base # Returns true if the issue is overdue def overdue? - !due_date.nil? && (due_date < Date.today) + !due_date.nil? && (due_date < Date.today) && !status.is_closed? end # Users the issue can be assigned to diff --git a/test/unit/issue_test.rb b/test/unit/issue_test.rb index b82303264..89ec3c6da 100644 --- a/test/unit/issue_test.rb +++ b/test/unit/issue_test.rb @@ -226,5 +226,6 @@ class IssueTest < Test::Unit::TestCase assert !Issue.new(:due_date => Date.today).overdue? assert !Issue.new(:due_date => 1.day.from_now.to_date).overdue? assert !Issue.new(:due_date => nil).overdue? + assert !Issue.new(:due_date => 1.day.ago.to_date, :status => IssueStatus.find(:first, :conditions => {:is_closed => true})).overdue? end end