mirror of
https://github.com/meineerde/redmine.git
synced 2026-02-01 03:57:15 +00:00
Fix 500 error when saving a custom field with an invalid regular expression (#43521).
git-svn-id: https://svn.redmine.org/redmine/trunk@24259 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
29bad5d405
commit
1b0307b02d
@ -158,7 +158,7 @@ class CustomField < ApplicationRecord
|
||||
end
|
||||
end
|
||||
|
||||
if default_value.present?
|
||||
if default_value.present? && errors[:regexp].blank?
|
||||
validate_field_value(default_value).each do |message|
|
||||
errors.add :default_value, message
|
||||
end
|
||||
|
||||
@ -48,6 +48,15 @@ class CustomFieldTest < ActiveSupport::TestCase
|
||||
assert field.save
|
||||
end
|
||||
|
||||
def test_regexp_validation_with_invalid_regex_and_default_value
|
||||
field = IssueCustomField.new(:name => 'regexp', :field_format => 'text', :regexp => '[', :default_value => 'abc')
|
||||
assert !field.save
|
||||
assert_include I18n.t('activerecord.errors.messages.invalid'),
|
||||
field.errors[:regexp]
|
||||
field.regexp = '[a-z0-9]'
|
||||
assert field.save
|
||||
end
|
||||
|
||||
def test_default_value_should_be_validated
|
||||
field = CustomField.new(:name => 'Test', :field_format => 'int')
|
||||
field.default_value = 'abc'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user