Projects selection on custom field form (#15136).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@12225 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang
2013-10-20 08:29:55 +00:00
parent 4eea64d38f
commit 13e381d31d
6 changed files with 61 additions and 23 deletions

View File

@@ -18,7 +18,7 @@
require File.expand_path('../../test_helper', __FILE__)
class CustomFieldsControllerTest < ActionController::TestCase
fixtures :custom_fields, :custom_values, :trackers, :users
fixtures :custom_fields, :custom_values, :trackers, :users, :projects
def setup
@request.session[:user_id] = 1
@@ -52,10 +52,22 @@ class CustomFieldsControllerTest < ActionController::TestCase
assert_select 'option[value=user]', :text => 'User'
assert_select 'option[value=version]', :text => 'Version'
end
assert_select 'input[type=checkbox][name=?]', 'custom_field[project_ids][]', Project.count
assert_select 'input[type=hidden][name=?]', 'custom_field[project_ids][]', 1
assert_select 'input[type=hidden][name=type][value=IssueCustomField]'
end
end
def test_new_time_entry_custom_field_should_not_show_trackers_and_projects
get :new, :type => 'TimeEntryCustomField'
assert_response :success
assert_template 'new'
assert_select 'form#custom_field_form' do
assert_select 'input[name=?]', 'custom_field[tracker_ids][]', 0
assert_select 'input[name=?]', 'custom_field[project_ids][]', 0
end
end
def test_default_value_should_be_an_input_for_string_custom_field
get :new, :type => 'IssueCustomField', :custom_field => {:field_format => 'string'}
assert_response :success
@@ -118,6 +130,17 @@ class CustomFieldsControllerTest < ActionController::TestCase
assert_equal 1, field.trackers.size
end
def test_create_with_project_ids
assert_difference 'CustomField.count' do
post :create, :type => "IssueCustomField", :custom_field => {
:name => "foo", :field_format => "string", :is_for_all => "0", :project_ids => ["1", "3", ""]
}
assert_response 302
end
field = IssueCustomField.order("id desc").first
assert_equal [1, 3], field.projects.map(&:id).sort
end
def test_create_with_failure
assert_no_difference 'CustomField.count' do
post :create, :type => "IssueCustomField", :custom_field => {:name => ''}