diff options
Diffstat (limited to 'test/unit/issue_test.rb')
-rw-r--r-- | test/unit/issue_test.rb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/unit/issue_test.rb b/test/unit/issue_test.rb index 33635e7a5..7f3e9484d 100644 --- a/test/unit/issue_test.rb +++ b/test/unit/issue_test.rb @@ -860,6 +860,29 @@ class IssueTest < ActiveSupport::TestCase assert issue.save end + def test_required_custom_field_that_is_not_visible_for_the_user_should_not_be_required + CustomField.delete_all + field = IssueCustomField.generate!(:is_required => true, :visible => false, :role_ids => [1], :trackers => Tracker.all, :is_for_all => true) + user = User.generate! + User.add_to_project(user, Project.find(1), Role.find(2)) + + issue = Issue.new(:project_id => 1, :tracker_id => 1, :status_id => 1, + :subject => 'Required fields', :author => user) + assert_save issue + end + + def test_required_custom_field_that_is_visible_for_the_user_should_be_required + CustomField.delete_all + field = IssueCustomField.generate!(:is_required => true, :visible => false, :role_ids => [1], :trackers => Tracker.all, :is_for_all => true) + user = User.generate! + User.add_to_project(user, Project.find(1), Role.find(1)) + + issue = Issue.new(:project_id => 1, :tracker_id => 1, :status_id => 1, + :subject => 'Required fields', :author => user) + assert !issue.save + assert_include "#{field.name} cannot be blank", issue.errors.full_messages + end + def test_required_attribute_names_for_multiple_roles_should_intersect_rules WorkflowPermission.delete_all WorkflowPermission.create!(:old_status_id => 1, :tracker_id => 1, |