Checkout of Instiki Trunk 1/21/2007.
This commit is contained in:
commit
69b62b6f33
1138 changed files with 139586 additions and 0 deletions
46
vendor/rails/actionpack/test/controller/url_rewriter_test.rb
vendored
Normal file
46
vendor/rails/actionpack/test/controller/url_rewriter_test.rb
vendored
Normal file
|
@ -0,0 +1,46 @@
|
|||
require File.dirname(__FILE__) + '/../abstract_unit'
|
||||
|
||||
class UrlRewriterTests < Test::Unit::TestCase
|
||||
def setup
|
||||
@request = ActionController::TestRequest.new
|
||||
@params = {}
|
||||
@rewriter = ActionController::UrlRewriter.new(@request, @params)
|
||||
end
|
||||
|
||||
def test_simple_build_query_string
|
||||
assert_query_equal '?x=1&y=2', @rewriter.send(:build_query_string, :x => '1', :y => '2')
|
||||
end
|
||||
def test_convert_ints_build_query_string
|
||||
assert_query_equal '?x=1&y=2', @rewriter.send(:build_query_string, :x => 1, :y => 2)
|
||||
end
|
||||
def test_escape_spaces_build_query_string
|
||||
assert_query_equal '?x=hello+world&y=goodbye+world', @rewriter.send(:build_query_string, :x => 'hello world', :y => 'goodbye world')
|
||||
end
|
||||
def test_expand_array_build_query_string
|
||||
assert_query_equal '?x[]=1&x[]=2', @rewriter.send(:build_query_string, :x => [1, 2])
|
||||
end
|
||||
|
||||
def test_escape_spaces_build_query_string_selected_keys
|
||||
assert_query_equal '?x=hello+world', @rewriter.send(:build_query_string, {:x => 'hello world', :y => 'goodbye world'}, [:x])
|
||||
end
|
||||
|
||||
def test_overwrite_params
|
||||
@params[:controller] = 'hi'
|
||||
@params[:action] = 'bye'
|
||||
@params[:id] = '2'
|
||||
|
||||
assert_equal '/hi/hi/2', @rewriter.rewrite(:only_path => true, :overwrite_params => {:action => 'hi'})
|
||||
u = @rewriter.rewrite(:only_path => false, :overwrite_params => {:action => 'hi'})
|
||||
assert_match %r(/hi/hi/2$), u
|
||||
end
|
||||
|
||||
|
||||
private
|
||||
def split_query_string(str)
|
||||
[str[0].chr] + str[1..-1].split(/&/).sort
|
||||
end
|
||||
|
||||
def assert_query_equal(q1, q2)
|
||||
assert_equal(split_query_string(q1), split_query_string(q2))
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue