diff options
Diffstat (limited to 'actionpack/test/controller/redirect_test.rb')
-rwxr-xr-x | actionpack/test/controller/redirect_test.rb | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/actionpack/test/controller/redirect_test.rb b/actionpack/test/controller/redirect_test.rb index ee20457508..36e742453a 100755 --- a/actionpack/test/controller/redirect_test.rb +++ b/actionpack/test/controller/redirect_test.rb @@ -13,6 +13,10 @@ class RedirectController < ActionController::Base redirect_to :action => "other_host", :only_path => false, :host => 'other.test.host' end + def module_redirect + redirect_to :controller => 'module_test/module_redirect', :action => "hello_world" + end + def rescue_errors(e) raise e end protected @@ -42,4 +46,55 @@ class RedirectTest < Test::Unit::TestCase get :host_redirect assert_redirected_to :action => "other_host", :only_path => false, :host => 'other.test.host' end + + def test_module_redirect + get :module_redirect + assert_redirect_url "http://test.host/module_test/module_redirect/hello_world" + end + + def test_module_redirect_using_options + get :module_redirect + assert_redirected_to :controller => 'module_test/module_redirect', :action => 'hello_world' + end end + +module ModuleTest + class ModuleRedirectController < ::RedirectController + def module_redirect + redirect_to :controller => '/redirect', :action => "hello_world" + end + end + + class ModuleRedirectTest < Test::Unit::TestCase + def setup + @controller = ModuleRedirectController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_simple_redirect + get :simple_redirect + assert_redirect_url "http://test.host/module_test/module_redirect/hello_world" + end + + def test_redirect_with_method_reference_and_parameters + get :method_redirect + assert_redirect_url "http://test.host/module_test/module_redirect/dashboard/1?message=hello" + end + + def test_simple_redirect_using_options + get :host_redirect + assert_redirected_to :action => "other_host", :only_path => false, :host => 'other.test.host' + end + + def test_module_redirect + get :module_redirect + assert_redirect_url "http://test.host/redirect/hello_world" + end + + def test_module_redirect_using_options + get :module_redirect + assert_redirected_to :controller => 'redirect', :action => "hello_world" + end + end +end
\ No newline at end of file |