From: Etienne Massip Date: Thu, 5 Apr 2012 18:10:54 +0000 (+0000) Subject: Fixed Internal Error in watchers XHR search (#10600). X-Git-Tag: 1.4.0~44 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=d36d64f6648e96c40acb3639a5f33371b20b2e91;p=redmine.git Fixed Internal Error in watchers XHR search (#10600). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9323 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/app/controllers/watchers_controller.rb b/app/controllers/watchers_controller.rb index 0a427801c..19af1e672 100644 --- a/app/controllers/watchers_controller.rb +++ b/app/controllers/watchers_controller.rb @@ -98,7 +98,7 @@ class WatchersController < ApplicationController def autocomplete_for_user @users = User.active.like(params[:q]).find(:all, :limit => 100) if @watched - @user -= @watched.watcher_users + @users -= @watched.watcher_users end render :layout => false end diff --git a/test/functional/watchers_controller_test.rb b/test/functional/watchers_controller_test.rb index 03b1a977b..8781db797 100644 --- a/test/functional/watchers_controller_test.rb +++ b/test/functional/watchers_controller_test.rb @@ -98,6 +98,26 @@ class WatchersControllerTest < ActionController::TestCase assert Issue.find(2).watched_by?(User.find(7)) end + def test_autocomplete_on_watchable_creation + xhr :get, :autocomplete_for_user, :q => 'mi' + assert_response :success + assert_select 'input', :count => 4 + assert_select 'input[name=?][value=1]', 'watcher[user_ids][]' + assert_select 'input[name=?][value=2]', 'watcher[user_ids][]' + assert_select 'input[name=?][value=8]', 'watcher[user_ids][]' + assert_select 'input[name=?][value=9]', 'watcher[user_ids][]' + end + + def test_autocomplete_on_watchable_update + xhr :get, :autocomplete_for_user, :q => 'mi', :object_id => '2' , :object_type => 'issue' + assert_response :success + assert_select 'input', :count => 3 + assert_select 'input[name=?][value=2]', 'watcher[user_ids][]' + assert_select 'input[name=?][value=8]', 'watcher[user_ids][]' + assert_select 'input[name=?][value=9]', 'watcher[user_ids][]' + + end + def test_append @request.session[:user_id] = 2 assert_no_difference 'Watcher.count' do