Mercurial > hg > soundsoftware-site
comparison test/functional/context_menus_controller_test.rb @ 909:cbb26bc654de redmine-1.3
Update to Redmine 1.3-stable branch (Redmine SVN rev 8964)
author | Chris Cannam |
---|---|
date | Fri, 24 Feb 2012 19:09:32 +0000 |
parents | 8661b858af72 |
children | 5e80956cc792 433d4f72a19b |
comparison
equal
deleted
inserted
replaced
908:c6c2cbd0afee | 909:cbb26bc654de |
---|---|
1 require File.expand_path('../../test_helper', __FILE__) | 1 require File.expand_path('../../test_helper', __FILE__) |
2 | 2 |
3 class ContextMenusControllerTest < ActionController::TestCase | 3 class ContextMenusControllerTest < ActionController::TestCase |
4 fixtures :all | 4 fixtures :projects, |
5 :trackers, | |
6 :projects_trackers, | |
7 :roles, | |
8 :member_roles, | |
9 :members, | |
10 :auth_sources, | |
11 :enabled_modules, | |
12 :workflows, | |
13 :journals, :journal_details, | |
14 :versions, | |
15 :issues, :issue_statuses, :issue_categories, | |
16 :users, | |
17 :enumerations | |
5 | 18 |
6 def test_context_menu_one_issue | 19 def test_context_menu_one_issue |
7 @request.session[:user_id] = 2 | 20 @request.session[:user_id] = 2 |
8 get :issues, :ids => [1] | 21 get :issues, :ids => [1] |
9 assert_response :success | 22 assert_response :success |
15 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&issue%5Bstatus_id%5D=5', | 28 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&issue%5Bstatus_id%5D=5', |
16 :class => '' } | 29 :class => '' } |
17 assert_tag :tag => 'a', :content => 'Immediate', | 30 assert_tag :tag => 'a', :content => 'Immediate', |
18 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&issue%5Bpriority_id%5D=8', | 31 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&issue%5Bpriority_id%5D=8', |
19 :class => '' } | 32 :class => '' } |
33 assert_no_tag :tag => 'a', :content => 'Inactive Priority' | |
20 # Versions | 34 # Versions |
21 assert_tag :tag => 'a', :content => '2.0', | 35 assert_tag :tag => 'a', :content => '2.0', |
22 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&issue%5Bfixed_version_id%5D=3', | 36 :attributes => { :href => '/issues/bulk_edit?ids%5B%5D=1&issue%5Bfixed_version_id%5D=3', |
23 :class => '' } | 37 :class => '' } |
24 assert_tag :tag => 'a', :content => 'eCookbook Subproject 1 - 2.0', | 38 assert_tag :tag => 'a', :content => 'eCookbook Subproject 1 - 2.0', |
48 assert_template 'context_menu' | 62 assert_template 'context_menu' |
49 assert_tag :tag => 'a', :content => 'Delete', | 63 assert_tag :tag => 'a', :content => 'Delete', |
50 :attributes => { :href => '#', | 64 :attributes => { :href => '#', |
51 :class => 'icon-del disabled' } | 65 :class => 'icon-del disabled' } |
52 end | 66 end |
53 | 67 |
54 def test_context_menu_multiple_issues_of_same_project | 68 def test_context_menu_multiple_issues_of_same_project |
55 @request.session[:user_id] = 2 | 69 @request.session[:user_id] = 2 |
56 get :issues, :ids => [1, 2] | 70 get :issues, :ids => [1, 2] |
57 assert_response :success | 71 assert_response :success |
58 assert_template 'context_menu' | 72 assert_template 'context_menu' |
59 assert_not_nil assigns(:issues) | 73 assert_not_nil assigns(:issues) |
60 assert_equal [1, 2], assigns(:issues).map(&:id).sort | 74 assert_equal [1, 2], assigns(:issues).map(&:id).sort |
61 | 75 |
62 ids = assigns(:issues).map(&:id).map {|i| "ids%5B%5D=#{i}"}.join('&') | 76 ids = assigns(:issues).map(&:id).map {|i| "ids%5B%5D=#{i}"}.join('&') |
63 assert_tag :tag => 'a', :content => 'Edit', | 77 assert_tag :tag => 'a', :content => 'Edit', |
64 :attributes => { :href => "/issues/bulk_edit?#{ids}", | 78 :attributes => { :href => "/issues/bulk_edit?#{ids}", |
65 :class => 'icon-edit' } | 79 :class => 'icon-edit' } |
66 assert_tag :tag => 'a', :content => 'Closed', | 80 assert_tag :tag => 'a', :content => 'Closed', |
88 get :issues, :ids => [1, 2, 6] | 102 get :issues, :ids => [1, 2, 6] |
89 assert_response :success | 103 assert_response :success |
90 assert_template 'context_menu' | 104 assert_template 'context_menu' |
91 assert_not_nil assigns(:issues) | 105 assert_not_nil assigns(:issues) |
92 assert_equal [1, 2, 6], assigns(:issues).map(&:id).sort | 106 assert_equal [1, 2, 6], assigns(:issues).map(&:id).sort |
93 | 107 |
94 ids = assigns(:issues).map(&:id).map {|i| "ids%5B%5D=#{i}"}.join('&') | 108 ids = assigns(:issues).map(&:id).map {|i| "ids%5B%5D=#{i}"}.join('&') |
95 assert_tag :tag => 'a', :content => 'Edit', | 109 assert_tag :tag => 'a', :content => 'Edit', |
96 :attributes => { :href => "/issues/bulk_edit?#{ids}", | 110 :attributes => { :href => "/issues/bulk_edit?#{ids}", |
97 :class => 'icon-edit' } | 111 :class => 'icon-edit' } |
98 assert_tag :tag => 'a', :content => 'Closed', | 112 assert_tag :tag => 'a', :content => 'Closed', |
106 :class => '' } | 120 :class => '' } |
107 assert_tag :tag => 'a', :content => 'Delete', | 121 assert_tag :tag => 'a', :content => 'Delete', |
108 :attributes => { :href => "/issues/destroy?#{ids}", | 122 :attributes => { :href => "/issues/destroy?#{ids}", |
109 :class => 'icon-del' } | 123 :class => 'icon-del' } |
110 end | 124 end |
111 | 125 |
112 def test_context_menu_issue_visibility | 126 def test_context_menu_issue_visibility |
113 get :issues, :ids => [1, 4] | 127 get :issues, :ids => [1, 4] |
114 assert_response :success | 128 assert_response :success |
115 assert_template 'context_menu' | 129 assert_template 'context_menu' |
116 assert_equal [1], assigns(:issues).collect(&:id) | 130 assert_equal [1], assigns(:issues).collect(&:id) |
117 end | 131 end |
132 | |
133 def test_time_entries_context_menu | |
134 @request.session[:user_id] = 2 | |
135 get :time_entries, :ids => [1, 2] | |
136 assert_response :success | |
137 assert_template 'time_entries' | |
138 assert_tag 'a', :content => 'Edit' | |
139 assert_no_tag 'a', :content => 'Edit', :attributes => {:class => /disabled/} | |
140 end | |
141 | |
142 def test_time_entries_context_menu_without_edit_permission | |
143 @request.session[:user_id] = 2 | |
144 Role.find_by_name('Manager').remove_permission! :edit_time_entries | |
145 | |
146 get :time_entries, :ids => [1, 2] | |
147 assert_response :success | |
148 assert_template 'time_entries' | |
149 assert_tag 'a', :content => 'Edit', :attributes => {:class => /disabled/} | |
150 end | |
118 end | 151 end |