Fix assert_redirected_to so it works with symbols

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4004 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
Jamis Buck
2006-03-20 18:16:48 +00:00
parent 4941475069
commit b0189f3f2f
2 changed files with 20 additions and 5 deletions

View File

@@ -85,8 +85,8 @@ module Test #:nodoc:
assert_equal(eurl, url, msg) if eurl && url
assert_equal(epath, path, msg) if epath && path
else
@response_diff = options.diff(@response.redirected_to) if @response.redirected_to
msg = build_message(message, "response is not a redirection to all of the options supplied (redirection is <?>), difference: <?>",
@response_diff = options.diff(@response.redirected_to) if options.is_a?(Hash) && @response.redirected_to.is_a?(Hash)
msg = build_message(message, "response is not a redirection to all of the options supplied (redirection is <?>)#{', difference: <?>' if @response_diff}",
@response.redirected_to || @response.redirect_url, @response_diff)
assert_block(msg) do

View File

@@ -7,7 +7,7 @@ class TestTest < Test::Unit::TestCase
flash["test"] = ">#{flash["test"]}<"
render :text => 'ignore me'
end
def render_raw_post
raise Test::Unit::AssertionFailedError, "#raw_post is blank" if request.raw_post.blank?
render :text => request.raw_post
@@ -54,9 +54,19 @@ HTML
render :text => params[:file].size
end
def rescue_action(e)
raise e
def redirect_to_symbol
redirect_to :generate_url, :id => 5
end
private
def rescue_action(e)
raise e
end
def generate_url(opts)
url_for(opts.merge(:action => "test_uri"))
end
end
def setup
@@ -393,4 +403,9 @@ HTML
def test_test_uploaded_file_exception_when_file_doesnt_exist
assert_raise(RuntimeError) { ActionController::TestUploadedFile.new('non_existent_file') }
end
def test_assert_redirected_to_symbol
get :redirect_to_symbol
assert_redirected_to :generate_url
end
end