@@ -20,8 +20,12 | |||||
20 | module WorkflowsHelper |
|
20 | module WorkflowsHelper | |
21 | def field_permission_tag(permissions, status, field) |
|
21 | def field_permission_tag(permissions, status, field) | |
22 | name = field.is_a?(CustomField) ? field.id.to_s : field |
|
22 | name = field.is_a?(CustomField) ? field.id.to_s : field | |
23 | select_tag("permissions[#{name}][#{status.id}]", |
|
23 | options = [["", ""], [l(:label_readonly), "readonly"], [l(:label_required), "required"]] | |
24 | options_for_select([["", ""], [l(:label_readonly), "readonly"], [l(:label_required), "required"]], permissions[status.id][name]) |
|
24 | ||
25 | ) |
|
25 | if field.is_a?(CustomField) && field.is_required? | |
|
26 | options = [["(#{l(:label_required)})", ""], [l(:label_readonly), "readonly"]] | |||
|
27 | end | |||
|
28 | ||||
|
29 | select_tag("permissions[#{name}][#{status.id}]", options_for_select(options, permissions[status.id][name])) | |||
26 | end |
|
30 | end | |
27 | end |
|
31 | end |
@@ -191,6 +191,22 class WorkflowsControllerTest < ActionController::TestCase | |||||
191 | end |
|
191 | end | |
192 | end |
|
192 | end | |
193 |
|
193 | |||
|
194 | def test_get_permissions_with_always_required_custom_field | |||
|
195 | cf = IssueCustomField.create!(:name => 'Foo', :field_format => 'string', :tracker_ids => [1], :is_required => true) | |||
|
196 | ||||
|
197 | get :permissions, :role_id => 1, :tracker_id => 1 | |||
|
198 | assert_response :success | |||
|
199 | assert_template 'permissions' | |||
|
200 | ||||
|
201 | # Custom field that is always required | |||
|
202 | # The default option is "(Required)" | |||
|
203 | assert_select 'select[name=?]', "permissions[#{cf.id}][3]" do | |||
|
204 | assert_select 'option[value=]', :text => '(Required)' | |||
|
205 | assert_select 'option[value=readonly]', :text => 'Read-only' | |||
|
206 | assert_select 'option[value=required]', 0 | |||
|
207 | end | |||
|
208 | end | |||
|
209 | ||||
194 | def test_get_permissions_with_role_and_tracker_and_all_statuses |
|
210 | def test_get_permissions_with_role_and_tracker_and_all_statuses | |
195 | WorkflowTransition.delete_all |
|
211 | WorkflowTransition.delete_all | |
196 |
|
212 |
General Comments 0
You need to be logged in to leave comments.
Login now