From 7798e1b1f77645099a0e54769bcc279e078917b5 Mon Sep 17 00:00:00 2001 From: Eric Davis Date: Thu, 7 Oct 2010 17:28:29 +0000 Subject: [PATCH] Allow assigning issues back to the author. #4199 This allows an issue to be reassigned to the author even if they are not a project member. Useful when passing back an issue to get more information from the author. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4240 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/issue.rb | 4 +++- test/unit/issue_test.rb | 16 +++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/app/models/issue.rb b/app/models/issue.rb index 44b4ba80..6856355c 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -390,7 +390,9 @@ class Issue < ActiveRecord::Base # Users the issue can be assigned to def assignable_users - project.assignable_users + users = project.assignable_users + users << author if author + users.sort end # Versions that the issue can be assigned to diff --git a/test/unit/issue_test.rb b/test/unit/issue_test.rb index 13a24cd6..efaaafbb 100644 --- a/test/unit/issue_test.rb +++ b/test/unit/issue_test.rb @@ -532,9 +532,19 @@ class IssueTest < ActiveSupport::TestCase assert Issue.new(:start_date => 100.days.ago.to_date, :due_date => Date.today, :done_ratio => 90).behind_schedule? end end - - def test_assignable_users - assert_kind_of User, Issue.find(1).assignable_users.first + + context "#assignable_users" do + should "be Users" do + assert_kind_of User, Issue.find(1).assignable_users.first + end + + should "include the issue author" do + project = Project.find(1) + non_project_member = User.generate! + issue = Issue.generate_for_project!(project, :author => non_project_member) + + assert issue.assignable_users.include?(non_project_member) + end end def test_create_should_send_email_notification -- 2.11.0