From 01cf5ed968fb1e7ac08f24f25ae6126d83891344 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sat, 12 Mar 2016 08:21:32 +0000 Subject: [PATCH] Private notes get copied without private flag to Duplicate issues (#22072). git-svn-id: http://svn.redmine.org/redmine/trunk@15196 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/issue.rb | 1 + test/unit/issue_test.rb | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/app/models/issue.rb b/app/models/issue.rb index cf9faaf33..8282e091b 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -1568,6 +1568,7 @@ class Issue < ActiveRecord::Base # Same user and notes if @current_journal duplicate.init_journal(@current_journal.user, @current_journal.notes) + duplicate.private_notes = @current_journal.private_notes end duplicate.update_attribute :status, self.status end diff --git a/test/unit/issue_test.rb b/test/unit/issue_test.rb index 34697d548..52d5c2013 100644 --- a/test/unit/issue_test.rb +++ b/test/unit/issue_test.rb @@ -1274,6 +1274,24 @@ class IssueTest < ActiveSupport::TestCase assert issue3.reload.closed? end + def test_should_close_duplicates_with_private_notes + issue = Issue.generate! + duplicate = Issue.generate! + IssueRelation.create!(:issue_from => duplicate, :issue_to => issue, + :relation_type => IssueRelation::TYPE_DUPLICATES) + assert issue.reload.duplicates.include?(duplicate) + + # Closing issue with private notes + issue.init_journal(User.first, "Private notes") + issue.private_notes = true + issue.status = IssueStatus.where(:is_closed => true).first + assert_save issue + + duplicate.reload + assert journal = duplicate.journals.detect {|journal| journal.notes == "Private notes"} + assert_equal true, journal.private_notes + end + def test_should_not_close_duplicated_issue issue1 = Issue.generate! issue2 = Issue.generate!