diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2014-11-05 14:51:04 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2014-11-05 14:51:04 +0000 |
commit | 5052d48491a7f485bc11387b374b11f0e7772941 (patch) | |
tree | 99c2b054850e81503a3b2ab7febee8e076731588 /test | |
parent | 6bb699d65fe0fd4ccaad8634ee0a10bd50b4d784 (diff) | |
download | redmine-5052d48491a7f485bc11387b374b11f0e7772941.tar.gz redmine-5052d48491a7f485bc11387b374b11f0e7772941.zip |
Fixed that setting a status as closed should update issue closed_on attribute (#18280).
git-svn-id: http://svn.redmine.org/redmine/trunk@13560 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test')
-rw-r--r-- | test/unit/issue_status_test.rb | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/test/unit/issue_status_test.rb b/test/unit/issue_status_test.rb index cb4ed90b8..71fcfa56e 100644 --- a/test/unit/issue_status_test.rb +++ b/test/unit/issue_status_test.rb @@ -96,4 +96,38 @@ class IssueStatusTest < ActiveSupport::TestCase assert_not_nil status assert_equal "Resolved", status.name end + + def test_setting_status_as_closed_should_set_closed_on_for_issues_without_status_journal + issue = Issue.generate!(:status_id => 1, :created_on => 2.days.ago) + assert_nil issue.closed_on + + issue.status.update! :is_closed => true + + issue.reload + assert issue.closed? + assert_equal issue.created_on, issue.closed_on + end + + def test_setting_status_as_closed_should_set_closed_on_for_issues_with_status_journal + issue = Issue.generate!(:status_id => 1, :created_on => 2.days.ago) + issue.init_journal(User.find(1)) + issue.status_id = 2 + issue.save! + + issue.status.update! :is_closed => true + + issue.reload + assert issue.closed? + assert_equal issue.journals.first.created_on, issue.closed_on + end + + def test_setting_status_as_closed_should_not_set_closed_on_for_issues_with_other_status + issue = Issue.generate!(:status_id => 2) + + IssueStatus.find(1).update! :is_closed => true + + issue.reload + assert !issue.closed? + assert_nil issue.closed_on + end end |