Browse Source

No blank option for custom fields marked as required on workflow settings.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@10001 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/2.1.0
Jean-Philippe Lang 12 years ago
parent
commit
e23511076c
2 changed files with 23 additions and 3 deletions
  1. 7
    3
      app/helpers/workflows_helper.rb
  2. 16
    0
      test/functional/workflows_controller_test.rb

+ 7
- 3
app/helpers/workflows_helper.rb View File

@@ -20,8 +20,12 @@
module WorkflowsHelper
def field_permission_tag(permissions, status, field)
name = field.is_a?(CustomField) ? field.id.to_s : field
select_tag("permissions[#{name}][#{status.id}]",
options_for_select([["", ""], [l(:label_readonly), "readonly"], [l(:label_required), "required"]], permissions[status.id][name])
)
options = [["", ""], [l(:label_readonly), "readonly"], [l(:label_required), "required"]]

if field.is_a?(CustomField) && field.is_required?
options = [["(#{l(:label_required)})", ""], [l(:label_readonly), "readonly"]]
end

select_tag("permissions[#{name}][#{status.id}]", options_for_select(options, permissions[status.id][name]))
end
end

+ 16
- 0
test/functional/workflows_controller_test.rb View File

@@ -191,6 +191,22 @@ class WorkflowsControllerTest < ActionController::TestCase
end
end

def test_get_permissions_with_always_required_custom_field
cf = IssueCustomField.create!(:name => 'Foo', :field_format => 'string', :tracker_ids => [1], :is_required => true)

get :permissions, :role_id => 1, :tracker_id => 1
assert_response :success
assert_template 'permissions'

# Custom field that is always required
# The default option is "(Required)"
assert_select 'select[name=?]', "permissions[#{cf.id}][3]" do
assert_select 'option[value=]', :text => '(Required)'
assert_select 'option[value=readonly]', :text => 'Read-only'
assert_select 'option[value=required]', 0
end
end

def test_get_permissions_with_role_and_tracker_and_all_statuses
WorkflowTransition.delete_all


Loading…
Cancel
Save