summaryrefslogtreecommitdiffstats
path: root/test/functional/settings_controller_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/settings_controller_test.rb')
-rw-r--r--test/functional/settings_controller_test.rb29
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