Merged r9703 from trunk.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/2.0-stable@9706 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2012-05-21 19:00:26 +00:00
parent 821ea2a757
commit 352d177f7e
2 changed files with 21 additions and 3 deletions

View File

@ -75,7 +75,7 @@ class Issue < ActiveRecord::Base
:conditions => ["#{Project.table_name}.status=#{Project::STATUS_ACTIVE}"]
before_create :default_assign
before_save :close_duplicates, :update_done_ratio_from_issue_status
before_save :close_duplicates, :update_done_ratio_from_issue_status, :force_updated_on_change
after_save {|issue| issue.send :after_project_change if !issue.id_changed? && issue.project_id_changed?}
after_save :reschedule_following_issues, :update_nested_set_attributes, :update_parent_attributes, :create_journal
after_destroy :update_parent_attributes
@ -432,8 +432,6 @@ class Issue < ActiveRecord::Base
@custom_values_before_change = {}
self.custom_field_values.each {|c| @custom_values_before_change.store c.custom_field_id, c.value }
end
# Make sure updated_on is updated when adding a note.
updated_on_will_change!
@current_journal
end
@ -994,6 +992,13 @@ class Issue < ActiveRecord::Base
end
end
# Make sure updated_on is updated when adding a note
def force_updated_on_change
if @current_journal
self.updated_on = current_time_from_proper_timezone
end
end
# Saves the changes in a Journal
# Called after_save
def create_journal

View File

@ -445,6 +445,19 @@ class IssueTest < ActiveSupport::TestCase
issue.save!
end
def test_adding_journal_should_update_timestamp
issue = Issue.find(1)
updated_on_was = issue.updated_on
issue.init_journal(User.first, "Adding notes")
assert_difference 'Journal.count' do
assert issue.save
end
issue.reload
assert_not_equal updated_on_was, issue.updated_on
end
def test_should_close_duplicates
# Create 3 issues
project = Project.find(1)