diff options
author | Marius Balteanu <marius.balteanu@zitec.com> | 2024-04-29 19:18:26 +0000 |
---|---|---|
committer | Marius Balteanu <marius.balteanu@zitec.com> | 2024-04-29 19:18:26 +0000 |
commit | f87be7fd540828a39911f6757d82cc76922b428c (patch) | |
tree | c4e8d7c82ff652d9da0f0e5061b863a0ce7e9c47 | |
parent | c2d4db8dd02a662453074db4cc875b3c9f1a2c9a (diff) | |
download | redmine-f87be7fd540828a39911f6757d82cc76922b428c.tar.gz redmine-f87be7fd540828a39911f6757d82cc76922b428c.zip |
Merged r22792 from trunk to 5.0-stable (#40410).
git-svn-id: https://svn.redmine.org/redmine/branches/5.0-stable@22799 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | app/helpers/watchers_helper.rb | 2 | ||||
-rw-r--r-- | test/functional/issues_controller_test.rb | 18 |
2 files changed, 19 insertions, 1 deletions
diff --git a/app/helpers/watchers_helper.rb b/app/helpers/watchers_helper.rb index 9c058ed67..a518ff9a7 100644 --- a/app/helpers/watchers_helper.rb +++ b/app/helpers/watchers_helper.rb @@ -74,7 +74,7 @@ module WatchersHelper def watchers_checkboxes(object, users, checked=nil) users.map do |user| - c = checked.nil? ? object.watched_by?(user) : checked + c = checked.nil? ? object.watcher_user_ids.include?(user.id) : checked tag = check_box_tag 'issue[watcher_user_ids][]', user.id, c, :id => nil content_tag 'label', "#{tag} #{h(user)}".html_safe, :id => "issue_watcher_user_ids_#{user.id}", diff --git a/test/functional/issues_controller_test.rb b/test/functional/issues_controller_test.rb index 0faccb8be..87a584660 100644 --- a/test/functional/issues_controller_test.rb +++ b/test/functional/issues_controller_test.rb @@ -4699,6 +4699,24 @@ class IssuesControllerTest < Redmine::ControllerTest assert_select 'input[name=?][value="8"][checked=checked]', 'issue[watcher_user_ids][]' end + def test_post_create_with_failure_should_not_dereference_group_watchers + @request.session[:user_id] = 1 + post( + :create, + :params => { + :project_id => 5, + :issue => { + :tracker_id => 1, + :watcher_user_ids => ['11'] + } + } + ) + assert_response :success + + assert_select 'input[name=?][value="8"][checked=checked]', 'issue[watcher_user_ids][]', 0 + assert_select 'input[name=?][value="11"][checked=checked]', 'issue[watcher_user_ids][]', 1 + end + def test_post_create_should_ignore_non_safe_attributes @request.session[:user_id] = 2 assert_nothing_raised do |