comparison test/functional/context_menus_controller_test.rb @ 1517:dffacf8a6908 redmine-2.5

Update to Redmine SVN revision 13367 on 2.5-stable branch
author Chris Cannam
date Tue, 09 Sep 2014 09:29:00 +0100
parents e248c7af89ec
children fb9a13467253
comparison
equal deleted inserted replaced
1516:b450a9d58aed 1517:dffacf8a6908
35 35
36 def test_context_menu_one_issue 36 def test_context_menu_one_issue
37 @request.session[:user_id] = 2 37 @request.session[:user_id] = 2
38 get :issues, :ids => [1] 38 get :issues, :ids => [1]
39 assert_response :success 39 assert_response :success
40 assert_template 'context_menu' 40 assert_template 'context_menus/issues'
41 41
42 assert_select 'a.icon-edit[href=?]', '/issues/1/edit', :text => 'Edit' 42 assert_select 'a.icon-edit[href=?]', '/issues/1/edit', :text => 'Edit'
43 assert_select 'a.icon-copy[href=?]', '/projects/ecookbook/issues/1/copy', :text => 'Copy' 43 assert_select 'a.icon-copy[href=?]', '/projects/ecookbook/issues/1/copy', :text => 'Copy'
44 assert_select 'a.icon-del[href=?]', '/issues?ids%5B%5D=1', :text => 'Delete' 44 assert_select 'a.icon-del[href=?]', '/issues?ids%5B%5D=1', :text => 'Delete'
45 45
56 end 56 end
57 57
58 def test_context_menu_one_issue_by_anonymous 58 def test_context_menu_one_issue_by_anonymous
59 get :issues, :ids => [1] 59 get :issues, :ids => [1]
60 assert_response :success 60 assert_response :success
61 assert_template 'context_menu' 61 assert_template 'context_menus/issues'
62 assert_tag :tag => 'a', :content => 'Delete', 62 assert_tag :tag => 'a', :content => 'Delete',
63 :attributes => { :href => '#', 63 :attributes => { :href => '#',
64 :class => 'icon-del disabled' } 64 :class => 'icon-del disabled' }
65 end 65 end
66 66
67 def test_context_menu_multiple_issues_of_same_project 67 def test_context_menu_multiple_issues_of_same_project
68 @request.session[:user_id] = 2 68 @request.session[:user_id] = 2
69 get :issues, :ids => [1, 2] 69 get :issues, :ids => [1, 2]
70 assert_response :success 70 assert_response :success
71 assert_template 'context_menu' 71 assert_template 'context_menus/issues'
72 assert_not_nil assigns(:issues) 72 assert_not_nil assigns(:issues)
73 assert_equal [1, 2], assigns(:issues).map(&:id).sort 73 assert_equal [1, 2], assigns(:issues).map(&:id).sort
74 74
75 ids = assigns(:issues).map(&:id).sort.map {|i| "ids%5B%5D=#{i}"}.join('&') 75 ids = assigns(:issues).map(&:id).sort.map {|i| "ids%5B%5D=#{i}"}.join('&')
76 76
85 85
86 def test_context_menu_multiple_issues_of_different_projects 86 def test_context_menu_multiple_issues_of_different_projects
87 @request.session[:user_id] = 2 87 @request.session[:user_id] = 2
88 get :issues, :ids => [1, 2, 6] 88 get :issues, :ids => [1, 2, 6]
89 assert_response :success 89 assert_response :success
90 assert_template 'context_menu' 90 assert_template 'context_menus/issues'
91 assert_not_nil assigns(:issues) 91 assert_not_nil assigns(:issues)
92 assert_equal [1, 2, 6], assigns(:issues).map(&:id).sort 92 assert_equal [1, 2, 6], assigns(:issues).map(&:id).sort
93 93
94 ids = assigns(:issues).map(&:id).sort.map {|i| "ids%5B%5D=#{i}"}.join('&') 94 ids = assigns(:issues).map(&:id).sort.map {|i| "ids%5B%5D=#{i}"}.join('&')
95 95
196 assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=__none__", :text => 'none' 196 assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=__none__", :text => 'none'
197 end 197 end
198 end 198 end
199 end 199 end
200 200
201 def test_context_menu_should_show_enabled_custom_fields_for_the_role_only
202 enabled_cf = IssueCustomField.generate!(:field_format => 'bool', :is_for_all => true, :tracker_ids => [1], :visible => false, :role_ids => [1,2])
203 disabled_cf = IssueCustomField.generate!(:field_format => 'bool', :is_for_all => true, :tracker_ids => [1], :visible => false, :role_ids => [2])
204 issue = Issue.generate!(:project_id => 1, :tracker_id => 1)
205
206 @request.session[:user_id] = 2
207 get :issues, :ids => [issue.id]
208
209 assert_select "li.cf_#{enabled_cf.id}"
210 assert_select "li.cf_#{disabled_cf.id}", 0
211 end
212
201 def test_context_menu_by_assignable_user_should_include_assigned_to_me_link 213 def test_context_menu_by_assignable_user_should_include_assigned_to_me_link
202 @request.session[:user_id] = 2 214 @request.session[:user_id] = 2
203 get :issues, :ids => [1] 215 get :issues, :ids => [1]
204 assert_response :success 216 assert_response :success
205 assert_template 'context_menu' 217 assert_template 'context_menus/issues'
206 218
207 assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bassigned_to_id%5D=2', :text => / me / 219 assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bassigned_to_id%5D=2', :text => / me /
208 end 220 end
209 221
210 def test_context_menu_should_propose_shared_versions_for_issues_from_different_projects 222 def test_context_menu_should_propose_shared_versions_for_issues_from_different_projects
211 @request.session[:user_id] = 2 223 @request.session[:user_id] = 2
212 version = Version.create!(:name => 'Shared', :sharing => 'system', :project_id => 1) 224 version = Version.create!(:name => 'Shared', :sharing => 'system', :project_id => 1)
213 225
214 get :issues, :ids => [1, 4] 226 get :issues, :ids => [1, 4]
215 assert_response :success 227 assert_response :success
216 assert_template 'context_menu' 228 assert_template 'context_menus/issues'
217 229
218 assert_include version, assigns(:versions) 230 assert_include version, assigns(:versions)
219 assert_select 'a', :text => 'eCookbook - Shared' 231 assert_select 'a', :text => 'eCookbook - Shared'
220 end 232 end
221 233
231 243
232 def test_time_entries_context_menu 244 def test_time_entries_context_menu
233 @request.session[:user_id] = 2 245 @request.session[:user_id] = 2
234 get :time_entries, :ids => [1, 2] 246 get :time_entries, :ids => [1, 2]
235 assert_response :success 247 assert_response :success
236 assert_template 'time_entries' 248 assert_template 'context_menus/time_entries'
237 249
238 assert_select 'a:not(.disabled)', :text => 'Edit' 250 assert_select 'a:not(.disabled)', :text => 'Edit'
239 end 251 end
240 252
241 def test_time_entries_context_menu_without_edit_permission 253 def test_time_entries_context_menu_without_edit_permission
242 @request.session[:user_id] = 2 254 @request.session[:user_id] = 2
243 Role.find_by_name('Manager').remove_permission! :edit_time_entries 255 Role.find_by_name('Manager').remove_permission! :edit_time_entries
244 256
245 get :time_entries, :ids => [1, 2] 257 get :time_entries, :ids => [1, 2]
246 assert_response :success 258 assert_response :success
247 assert_template 'time_entries' 259 assert_template 'context_menus/time_entries'
248 assert_select 'a.disabled', :text => 'Edit' 260 assert_select 'a.disabled', :text => 'Edit'
249 end 261 end
250 end 262 end