Patch by Felix Schäfer (@felix) and Kenta Kumojima (@kumojima). git-svn-id: https://svn.redmine.org/redmine/trunk@22792 e93f8b46-1217-0410-a6f0-8f06a7374b81pull/149/merge
def watchers_checkboxes(object, users, checked=nil) | def watchers_checkboxes(object, users, checked=nil) | ||||
users.map do |user| | 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 | tag = check_box_tag 'issue[watcher_user_ids][]', user.id, c, :id => nil | ||||
content_tag 'label', "#{tag} #{h(user)}".html_safe, | content_tag 'label', "#{tag} #{h(user)}".html_safe, | ||||
:id => "issue_watcher_user_ids_#{user.id}", | :id => "issue_watcher_user_ids_#{user.id}", |
assert_select 'input[name=?][value="8"][checked=checked]', 'issue[watcher_user_ids][]' | assert_select 'input[name=?][value="8"][checked=checked]', 'issue[watcher_user_ids][]' | ||||
end | 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 | def test_post_create_should_ignore_non_safe_attributes | ||||
@request.session[:user_id] = 2 | @request.session[:user_id] = 2 | ||||
assert_nothing_raised do | assert_nothing_raised do |