Test against the real value of tld_length unless explicitly set
There were two places where the tld_length default was hard-coded to 1, both overriding the real default value of ActionDispatch::Http::URL.tld_length in this set of tests. This commit removes both of those, relying on the actual value of ActionDispatch::Http::URL.tld_length, unless it's specifically overridden.
This commit is contained in:
parent
8bdbf88dfd
commit
e8bfaa58bd
@ -4,9 +4,13 @@ class BaseRequestTest < ActiveSupport::TestCase
|
|||||||
def setup
|
def setup
|
||||||
@env = {
|
@env = {
|
||||||
:ip_spoofing_check => true,
|
:ip_spoofing_check => true,
|
||||||
:tld_length => 1,
|
|
||||||
"rack.input" => "foo"
|
"rack.input" => "foo"
|
||||||
}
|
}
|
||||||
|
@original_tld_length = ActionDispatch::Http::URL.tld_length
|
||||||
|
end
|
||||||
|
|
||||||
|
def teardown
|
||||||
|
ActionDispatch::Http::URL.tld_length = @original_tld_length
|
||||||
end
|
end
|
||||||
|
|
||||||
def url_for(options = {})
|
def url_for(options = {})
|
||||||
@ -19,9 +23,9 @@ def stub_request(env = {})
|
|||||||
ip_spoofing_check = env.key?(:ip_spoofing_check) ? env.delete(:ip_spoofing_check) : true
|
ip_spoofing_check = env.key?(:ip_spoofing_check) ? env.delete(:ip_spoofing_check) : true
|
||||||
@trusted_proxies ||= nil
|
@trusted_proxies ||= nil
|
||||||
ip_app = ActionDispatch::RemoteIp.new(Proc.new { }, ip_spoofing_check, @trusted_proxies)
|
ip_app = ActionDispatch::RemoteIp.new(Proc.new { }, ip_spoofing_check, @trusted_proxies)
|
||||||
tld_length = env.key?(:tld_length) ? env.delete(:tld_length) : 1
|
ActionDispatch::Http::URL.tld_length = env.delete(:tld_length) if env.key?(:tld_length)
|
||||||
|
|
||||||
ip_app.call(env)
|
ip_app.call(env)
|
||||||
ActionDispatch::Http::URL.tld_length = tld_length
|
|
||||||
|
|
||||||
env = @env.merge(env)
|
env = @env.merge(env)
|
||||||
ActionDispatch::Request.new(env)
|
ActionDispatch::Request.new(env)
|
||||||
@ -254,15 +258,6 @@ class RequestIP < BaseRequestTest
|
|||||||
|
|
||||||
class RequestDomain < BaseRequestTest
|
class RequestDomain < BaseRequestTest
|
||||||
test "domains" do
|
test "domains" do
|
||||||
request = stub_request 'HTTP_HOST' => 'www.rubyonrails.org'
|
|
||||||
assert_equal "rubyonrails.org", request.domain
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "www.rubyonrails.co.uk"
|
|
||||||
assert_equal "rubyonrails.co.uk", request.domain(2)
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "www.rubyonrails.co.uk", :tld_length => 2
|
|
||||||
assert_equal "rubyonrails.co.uk", request.domain
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "192.168.1.200"
|
request = stub_request 'HTTP_HOST' => "192.168.1.200"
|
||||||
assert_nil request.domain
|
assert_nil request.domain
|
||||||
|
|
||||||
@ -271,25 +266,18 @@ class RequestDomain < BaseRequestTest
|
|||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "192.168.1.200.com"
|
request = stub_request 'HTTP_HOST' => "192.168.1.200.com"
|
||||||
assert_equal "200.com", request.domain
|
assert_equal "200.com", request.domain
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => 'www.rubyonrails.org'
|
||||||
|
assert_equal "rubyonrails.org", request.domain
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => "www.rubyonrails.co.uk"
|
||||||
|
assert_equal "rubyonrails.co.uk", request.domain(2)
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => "www.rubyonrails.co.uk", :tld_length => 2
|
||||||
|
assert_equal "rubyonrails.co.uk", request.domain
|
||||||
end
|
end
|
||||||
|
|
||||||
test "subdomains" do
|
test "subdomains" do
|
||||||
request = stub_request 'HTTP_HOST' => "www.rubyonrails.org"
|
|
||||||
assert_equal %w( www ), request.subdomains
|
|
||||||
assert_equal "www", request.subdomain
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "www.rubyonrails.co.uk"
|
|
||||||
assert_equal %w( www ), request.subdomains(2)
|
|
||||||
assert_equal "www", request.subdomain(2)
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "dev.www.rubyonrails.co.uk"
|
|
||||||
assert_equal %w( dev www ), request.subdomains(2)
|
|
||||||
assert_equal "dev.www", request.subdomain(2)
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "dev.www.rubyonrails.co.uk", :tld_length => 2
|
|
||||||
assert_equal %w( dev www ), request.subdomains
|
|
||||||
assert_equal "dev.www", request.subdomain
|
|
||||||
|
|
||||||
request = stub_request 'HTTP_HOST' => "foobar.foobar.com"
|
request = stub_request 'HTTP_HOST' => "foobar.foobar.com"
|
||||||
assert_equal %w( foobar ), request.subdomains
|
assert_equal %w( foobar ), request.subdomains
|
||||||
assert_equal "foobar", request.subdomain
|
assert_equal "foobar", request.subdomain
|
||||||
@ -309,6 +297,22 @@ class RequestDomain < BaseRequestTest
|
|||||||
request = stub_request 'HTTP_HOST' => nil
|
request = stub_request 'HTTP_HOST' => nil
|
||||||
assert_equal [], request.subdomains
|
assert_equal [], request.subdomains
|
||||||
assert_equal "", request.subdomain
|
assert_equal "", request.subdomain
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => "www.rubyonrails.org"
|
||||||
|
assert_equal %w( www ), request.subdomains
|
||||||
|
assert_equal "www", request.subdomain
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => "www.rubyonrails.co.uk"
|
||||||
|
assert_equal %w( www ), request.subdomains(2)
|
||||||
|
assert_equal "www", request.subdomain(2)
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => "dev.www.rubyonrails.co.uk"
|
||||||
|
assert_equal %w( dev www ), request.subdomains(2)
|
||||||
|
assert_equal "dev.www", request.subdomain(2)
|
||||||
|
|
||||||
|
request = stub_request 'HTTP_HOST' => "dev.www.rubyonrails.co.uk", :tld_length => 2
|
||||||
|
assert_equal %w( dev www ), request.subdomains
|
||||||
|
assert_equal "dev.www", request.subdomain
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user