diff options
Diffstat (limited to 'test/functional/settings_controller_test.rb')
-rw-r--r-- | test/functional/settings_controller_test.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/functional/settings_controller_test.rb b/test/functional/settings_controller_test.rb index 38e569569..d7dacc0ee 100644 --- a/test/functional/settings_controller_test.rb +++ b/test/functional/settings_controller_test.rb @@ -254,4 +254,33 @@ class SettingsControllerTest < Redmine::ControllerTest ensure Redmine::Plugin.unregister(:foo) end + + def test_post_mail_handler_delimiters_should_not_save_invalid_regex_delimiters + post :edit, :params => { + :settings => { + :mail_handler_enable_regex_delimiters => '1', + :mail_handler_body_delimiters => 'Abc[', + } + } + + assert_response :success + assert_equal '0', Setting.mail_handler_enable_regex_delimiters + assert_equal '', Setting.mail_handler_body_delimiters + + assert_select_error /is not a valid regular expression/ + assert_select 'textarea[name=?]', 'settings[mail_handler_body_delimiters]', :text => 'Abc[' + end + + def test_post_mail_handler_delimiters_should_save_valid_regex_delimiters + post :edit, :params => { + :settings => { + :mail_handler_enable_regex_delimiters => '1', + :mail_handler_body_delimiters => 'On .*, .* at .*, .* <.*<mailto:.*>> wrote:', + } + } + + assert_redirected_to '/settings' + assert_equal '1', Setting.mail_handler_enable_regex_delimiters + assert_equal 'On .*, .* at .*, .* <.*<mailto:.*>> wrote:', Setting.mail_handler_body_delimiters + end end |