Mercurial > hg > soundsoftware-site
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 |