aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test
diff options
context:
space:
mode:
authorCarlhuda <carlhuda@engineyard.com>2010-03-02 17:20:13 -0800
committerCarlhuda <carlhuda@engineyard.com>2010-03-03 15:49:52 -0800
commitbcfb77782b9d7f28f0c19005da909162e5e27690 (patch)
tree136ab5091182ae2b927d31f9a5453b050d647925 /actionpack/test
parent664090348154ccbf1274a13bbc3d3c37ba35bc7d (diff)
downloadrails-bcfb77782b9d7f28f0c19005da909162e5e27690.tar.gz
rails-bcfb77782b9d7f28f0c19005da909162e5e27690.tar.bz2
rails-bcfb77782b9d7f28f0c19005da909162e5e27690.zip
Work on deprecating ActionController::Base.relative_url_root
Diffstat (limited to 'actionpack/test')
-rw-r--r--actionpack/test/controller/url_for_test.rb15
-rw-r--r--actionpack/test/dispatch/request_test.rb8
-rw-r--r--actionpack/test/template/asset_tag_helper_test.rb38
3 files changed, 22 insertions, 39 deletions
diff --git a/actionpack/test/controller/url_for_test.rb b/actionpack/test/controller/url_for_test.rb
index a7b77edc6e..07809aa480 100644
--- a/actionpack/test/controller/url_for_test.rb
+++ b/actionpack/test/controller/url_for_test.rb
@@ -113,15 +113,13 @@ module AbstractController
end
def test_relative_url_root_is_respected
- orig_relative_url_root = ActionController::Base.relative_url_root
- ActionController::Base.relative_url_root = '/subdir'
+ # ROUTES TODO: Tests should not have to pass :relative_url_root directly. This
+ # should probably come from the router.
add_host!
assert_equal('https://www.basecamphq.com/subdir/c/a/i',
- W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https')
+ W.new.url_for(:controller => 'c', :action => 'a', :id => 'i', :protocol => 'https', :relative_url_root => '/subdir')
)
- ensure
- ActionController::Base.relative_url_root = orig_relative_url_root
end
def test_named_routes
@@ -146,9 +144,6 @@ module AbstractController
end
def test_relative_url_root_is_respected_for_named_routes
- orig_relative_url_root = ActionController::Base.relative_url_root
- ActionController::Base.relative_url_root = '/subdir'
-
with_routing do |set|
set.draw do |map|
match '/home/sweet/home/:user', :to => 'home#index', :as => :home
@@ -158,10 +153,8 @@ module AbstractController
controller = kls.new
assert_equal 'http://www.basecamphq.com/subdir/home/sweet/home/again',
- controller.send(:home_url, :host => 'www.basecamphq.com', :user => 'again')
+ controller.send(:home_url, :host => 'www.basecamphq.com', :user => 'again', :relative_url_root => "/subdir")
end
- ensure
- ActionController::Base.relative_url_root = orig_relative_url_root
end
def test_only_path
diff --git a/actionpack/test/dispatch/request_test.rb b/actionpack/test/dispatch/request_test.rb
index cc6acead6e..703f03fa96 100644
--- a/actionpack/test/dispatch/request_test.rb
+++ b/actionpack/test/dispatch/request_test.rb
@@ -1,14 +1,6 @@
require 'abstract_unit'
class RequestTest < ActiveSupport::TestCase
- def setup
- ActionController::Base.relative_url_root = nil
- end
-
- def teardown
- ActionController::Base.relative_url_root = nil
- end
-
test "remote ip" do
request = stub_request 'REMOTE_ADDR' => '1.2.3.4'
assert_equal '1.2.3.4', request.remote_ip
diff --git a/actionpack/test/template/asset_tag_helper_test.rb b/actionpack/test/template/asset_tag_helper_test.rb
index 586de66714..ccc39e9af6 100644
--- a/actionpack/test/template/asset_tag_helper_test.rb
+++ b/actionpack/test/template/asset_tag_helper_test.rb
@@ -1,4 +1,13 @@
require 'abstract_unit'
+require 'active_support/ordered_options'
+
+class FakeController
+ attr_accessor :request
+
+ def config
+ @config ||= ActiveSupport::InheritableOptions.new(ActionController::Metal.config)
+ end
+end
class AssetTagHelperTest < ActionView::TestCase
tests ActionView::Helpers::AssetTagHelper
@@ -32,8 +41,7 @@ class AssetTagHelperTest < ActionView::TestCase
)
end
- @controller = Class.new do
- attr_accessor :request
+ @controller = Class.new(FakeController) do
def url_for(*args) "http://www.example.com" end
end.new
@@ -372,11 +380,9 @@ class AssetTagHelperTest < ActionView::TestCase
end
def test_timebased_asset_id_with_relative_url_root
- ActionController::Base.relative_url_root = "/collaboration/hieraki"
- expected_time = File.stat(File.expand_path(File.dirname(__FILE__) + "/../fixtures/public/images/rails.png")).mtime.to_i.to_s
- assert_equal %(<img alt="Rails" src="#{ActionController::Base.relative_url_root}/images/rails.png?#{expected_time}" />), image_tag("rails.png")
- ensure
- ActionController::Base.relative_url_root = ""
+ @controller.config.relative_url_root = "/collaboration/hieraki"
+ expected_time = File.stat(File.expand_path(File.dirname(__FILE__) + "/../fixtures/public/images/rails.png")).mtime.to_i.to_s
+ assert_equal %(<img alt="Rails" src="#{@controller.config.relative_url_root}/images/rails.png?#{expected_time}" />), image_tag("rails.png")
end
def test_should_skip_asset_id_on_complete_url
@@ -606,7 +612,7 @@ class AssetTagHelperTest < ActionView::TestCase
def test_caching_javascript_include_tag_with_relative_url_root
ENV["RAILS_ASSET_ID"] = ""
- ActionController::Base.relative_url_root = "/collaboration/hieraki"
+ @controller.config.relative_url_root = "/collaboration/hieraki"
ActionController::Base.perform_caching = true
assert_dom_equal(
@@ -624,7 +630,6 @@ class AssetTagHelperTest < ActionView::TestCase
assert File.exist?(File.join(ActionView::Helpers::AssetTagHelper::JAVASCRIPTS_DIR, 'money.js'))
ensure
- ActionController::Base.relative_url_root = nil
FileUtils.rm_f(File.join(ActionView::Helpers::AssetTagHelper::JAVASCRIPTS_DIR, 'all.js'))
FileUtils.rm_f(File.join(ActionView::Helpers::AssetTagHelper::JAVASCRIPTS_DIR, 'money.js'))
end
@@ -821,7 +826,7 @@ class AssetTagHelperTest < ActionView::TestCase
def test_caching_stylesheet_link_tag_with_relative_url_root
ENV["RAILS_ASSET_ID"] = ""
- ActionController::Base.relative_url_root = "/collaboration/hieraki"
+ @controller.config.relative_url_root = "/collaboration/hieraki"
ActionController::Base.perform_caching = true
assert_dom_equal(
@@ -841,7 +846,6 @@ class AssetTagHelperTest < ActionView::TestCase
assert File.exist?(File.join(ActionView::Helpers::AssetTagHelper::STYLESHEETS_DIR, 'money.css'))
ensure
- ActionController::Base.relative_url_root = nil
FileUtils.rm_f(File.join(ActionView::Helpers::AssetTagHelper::STYLESHEETS_DIR, 'all.css'))
FileUtils.rm_f(File.join(ActionView::Helpers::AssetTagHelper::STYLESHEETS_DIR, 'money.css'))
end
@@ -884,16 +888,14 @@ class AssetTagHelperNonVhostTest < ActionView::TestCase
def setup
super
- ActionController::Base.relative_url_root = "/collaboration/hieraki"
-
- @controller = Class.new do
- attr_accessor :request
-
+ @controller = Class.new(FakeController) do
def url_for(options)
"http://www.example.com/collaboration/hieraki"
end
end.new
+ @controller.config.relative_url_root = "/collaboration/hieraki"
+
@request = Class.new do
def protocol
'gopher://'
@@ -905,10 +907,6 @@ class AssetTagHelperNonVhostTest < ActionView::TestCase
ActionView::Helpers::AssetTagHelper::reset_javascript_include_default
end
- def teardown
- ActionController::Base.relative_url_root = nil
- end
-
def test_should_compute_proper_path
assert_dom_equal(%(<link href="http://www.example.com/collaboration/hieraki" rel="alternate" title="RSS" type="application/rss+xml" />), auto_discovery_link_tag)
assert_dom_equal(%(/collaboration/hieraki/javascripts/xmlhr.js), javascript_path("xmlhr"))