Fixed: journal details duplicated when an issue is saved twice (#3690).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3499 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang
2010-02-28 09:21:12 +00:00
parent 26e9a0d919
commit 02cc0efdd7
2 changed files with 75 additions and 29 deletions
+26
View File
@@ -529,6 +529,32 @@ class IssueTest < ActiveSupport::TestCase
end
assert ActionMailer::Base.deliveries.empty?
end
def test_saving_twice_should_not_duplicate_journal_details
i = Issue.find(:first)
i.init_journal(User.find(2), 'Some notes')
# 2 changes
i.subject = 'New subject'
i.done_ratio = i.done_ratio + 10
assert_difference 'Journal.count' do
assert_difference 'JournalDetail.count', 2 do
assert i.save
end
end
# 1 more change
i.priority = IssuePriority.find(:first, :conditions => ["id <> ?", i.priority_id])
assert_no_difference 'Journal.count' do
assert_difference 'JournalDetail.count', 1 do
i.save
end
end
# no more change
assert_no_difference 'Journal.count' do
assert_no_difference 'JournalDetail.count' do
i.save
end
end
end
context "#done_ratio" do
setup do