diff options
-rw-r--r-- | app/models/issue.rb | 4 | ||||
-rw-r--r-- | test/unit/issue_test.rb | 8 |
2 files changed, 10 insertions, 2 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb index dcc3930a5..8df0082d0 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -830,12 +830,12 @@ class Issue < ActiveRecord::Base end end - # Returns the previous assignee if changed + # Returns the previous assignee (user or group) if changed def assigned_to_was # assigned_to_id_was is reset before after_save callbacks user_id = @previous_assigned_to_id || assigned_to_id_was if user_id && user_id != assigned_to_id - @assigned_to_was ||= User.find_by_id(user_id) + @assigned_to_was ||= Principal.find_by_id(user_id) end end diff --git a/test/unit/issue_test.rb b/test/unit/issue_test.rb index 7f3e9484d..25ccb0812 100644 --- a/test/unit/issue_test.rb +++ b/test/unit/issue_test.rb @@ -2614,4 +2614,12 @@ class IssueTest < ActiveSupport::TestCase issue.tracker = Tracker.find(2) assert_equal IssueStatus.find(3), issue.status end + + def test_assigned_to_was_with_a_group + group = Group.find(10) + + issue = Issue.generate!(:assigned_to => group) + issue.reload.assigned_to = nil + assert_equal group, issue.assigned_to_was + end end |