diff options
Diffstat (limited to 'railties')
-rw-r--r-- | railties/lib/rails/application/finisher.rb | 2 | ||||
-rw-r--r-- | railties/test/application/configuration_test.rb | 24 | ||||
-rw-r--r-- | railties/test/application/mailer_previews_test.rb | 14 |
3 files changed, 38 insertions, 2 deletions
diff --git a/railties/lib/rails/application/finisher.rb b/railties/lib/rails/application/finisher.rb index 5b8509b2e9..7a1bb1e25c 100644 --- a/railties/lib/rails/application/finisher.rb +++ b/railties/lib/rails/application/finisher.rb @@ -22,8 +22,6 @@ module Rails initializer :add_builtin_route do |app| if Rails.env.development? app.routes.append do - get '/rails/mailers' => "rails/mailers#index" - get '/rails/mailers/*path' => "rails/mailers#preview" get '/rails/info/properties' => "rails/info#properties" get '/rails/info/routes' => "rails/info#routes" get '/rails/info' => "rails/info#index" diff --git a/railties/test/application/configuration_test.rb b/railties/test/application/configuration_test.rb index 17b406f6a3..1feedb6602 100644 --- a/railties/test/application/configuration_test.rb +++ b/railties/test/application/configuration_test.rb @@ -965,5 +965,29 @@ module ApplicationTests assert db_config.is_a?(Hash) end + + test 'config.mail_preview_enabled defaults to true in development' do + Rails.env = "development" + require "#{app_path}/config/environment" + + assert Rails.application.config.action_mailer.preview_enabled + end + + test 'config.mail_preview_enabled defaults to false in production' do + Rails.env = "production" + require "#{app_path}/config/environment" + + assert_equal Rails.application.config.action_mailer.preview_enabled, false + end + + test 'config.mail_preview_enabled can be set in the configuration file' do + Rails.env = "production" + add_to_config <<-RUBY + config.action_mailer.preview_enabled = true + RUBY + require "#{app_path}/config/environment" + + assert_equal Rails.application.config.action_mailer.preview_enabled, true + end end end diff --git a/railties/test/application/mailer_previews_test.rb b/railties/test/application/mailer_previews_test.rb index c588fd7012..d17eb0a8d1 100644 --- a/railties/test/application/mailer_previews_test.rb +++ b/railties/test/application/mailer_previews_test.rb @@ -26,6 +26,20 @@ module ApplicationTests assert_equal 404, last_response.status end + test "/rails/mailers is accessible with correct configuraiton" do + add_to_config "config.action_mailer.preview_enabled = true" + app("production") + get "/rails/mailers" + assert_equal 200, last_response.status + end + + test "/rails/mailers is not accessible with preview_enabled = false" do + add_to_config "config.action_mailer.preview_enabled = false" + app("development") + get "/rails/mailers" + assert_equal 404, last_response.status + end + test "mailer previews are loaded from the default preview_path" do mailer 'notifier', <<-RUBY class Notifier < ActionMailer::Base |