aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/application/url_generation_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'railties/test/application/url_generation_test.rb')
-rw-r--r--railties/test/application/url_generation_test.rb58
1 files changed, 58 insertions, 0 deletions
diff --git a/railties/test/application/url_generation_test.rb b/railties/test/application/url_generation_test.rb
new file mode 100644
index 0000000000..f22b9fda3d
--- /dev/null
+++ b/railties/test/application/url_generation_test.rb
@@ -0,0 +1,58 @@
+# frozen_string_literal: true
+
+require "isolation/abstract_unit"
+
+module ApplicationTests
+ class UrlGenerationTest < ActiveSupport::TestCase
+ include ActiveSupport::Testing::Isolation
+
+ def app
+ Rails.application
+ end
+
+ test "it works" do
+ require "rails"
+ require "action_controller/railtie"
+ require "action_view/railtie"
+
+ class MyApp < Rails::Application
+ config.session_store :cookie_store, key: "_myapp_session"
+ config.active_support.deprecation = :log
+ config.eager_load = false
+ end
+
+ Rails.application.initialize!
+
+ class ::ApplicationController < ActionController::Base
+ end
+
+ class ::OmgController < ::ApplicationController
+ def index
+ render plain: omg_path
+ end
+ end
+
+ MyApp.routes.draw do
+ get "/" => "omg#index", as: :omg
+ end
+
+ require "rack/test"
+ extend Rack::Test::Methods
+
+ get "/"
+ assert_equal "/", last_response.body
+ end
+
+ def test_routes_know_the_relative_root
+ require "rails"
+ require "action_controller/railtie"
+ require "action_view/railtie"
+
+ relative_url = "/hello"
+ ENV["RAILS_RELATIVE_URL_ROOT"] = relative_url
+ app = Class.new(Rails::Application)
+ assert_equal relative_url, app.routes.relative_url_root
+ ENV["RAILS_RELATIVE_URL_ROOT"] = nil
+ end
+ end
+end