mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Added :method option to verify for ensuring that either GET, POST, etc is allowed #984 [Jamis Buck]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1060 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
@@ -18,6 +18,9 @@ class VerificationTest < Test::Unit::TestCase
|
||||
verify :only => [:multi_one, :multi_two], :session => %w( one two ),
|
||||
:redirect_to => { :action => "unguarded" }
|
||||
|
||||
verify :only => :guarded_by_method, :method => :post,
|
||||
:redirect_to => { :action => "unguarded" }
|
||||
|
||||
def guarded_one
|
||||
render_text "#{@params["one"]}"
|
||||
end
|
||||
@@ -42,9 +45,15 @@ class VerificationTest < Test::Unit::TestCase
|
||||
render_text "#{@session["two"]}:#{@session["one"]}"
|
||||
end
|
||||
|
||||
def guarded_by_method
|
||||
render_text "#{@request.method}"
|
||||
end
|
||||
|
||||
def unguarded
|
||||
render_text "#{@params["one"]}"
|
||||
end
|
||||
|
||||
def rescue_action(e) raise end
|
||||
end
|
||||
|
||||
def setup
|
||||
@@ -134,4 +143,16 @@ class VerificationTest < Test::Unit::TestCase
|
||||
process "multi_two"
|
||||
assert_redirected_to :action => "unguarded"
|
||||
end
|
||||
|
||||
def test_guarded_by_method_with_prereqs
|
||||
@request.env["REQUEST_METHOD"] = "POST"
|
||||
process "guarded_by_method"
|
||||
assert_equal "post", @response.body
|
||||
end
|
||||
|
||||
def test_guarded_by_method_without_prereqs
|
||||
@request.env["REQUEST_METHOD"] = "GET"
|
||||
process "guarded_by_method"
|
||||
assert_redirected_to :action => "unguarded"
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user