From c1505e3e2b1a4f0d6d9c29731cac1dc096c13d2e Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Thu, 15 Sep 2005 05:24:29 +0000 Subject: [PATCH] Included UrlRewriter tests in rake run and made them not depend on Hash order git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2244 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- ...rewriter_tests.rb => url_rewriter_test.rb} | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) rename actionpack/test/controller/{url_rewriter_tests.rb => url_rewriter_test.rb} (53%) diff --git a/actionpack/test/controller/url_rewriter_tests.rb b/actionpack/test/controller/url_rewriter_test.rb similarity index 53% rename from actionpack/test/controller/url_rewriter_tests.rb rename to actionpack/test/controller/url_rewriter_test.rb index af26c2dcf5..1219abdd9f 100644 --- a/actionpack/test/controller/url_rewriter_tests.rb +++ b/actionpack/test/controller/url_rewriter_test.rb @@ -8,20 +8,20 @@ class UrlRewriterTests < Test::Unit::TestCase end def test_simple_build_query_string - assert_equal '?x=1&y=2', @rewriter.send(:build_query_string, :x => '1', :y => '2') + 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_equal '?x=1&y=2', @rewriter.send(:build_query_string, :x => 1, :y => 2) + 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_equal '?x=hello+world&y=goodbye+world', @rewriter.send(:build_query_string, :x => 'hello world', :y => 'goodbye world') + 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_equal '?x[]=1&x[]=2', @rewriter.send(:build_query_string, :x => [1, 2]) + 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_equal '?x=hello+world', @rewriter.send(:build_query_string, {:x => 'hello world', :y => 'goodbye world'}, [:x]) + assert_query_equal '?x=hello+world', @rewriter.send(:build_query_string, {:x => 'hello world', :y => 'goodbye world'}, [:x]) end def test_overwrite_params @@ -34,4 +34,13 @@ class UrlRewriterTests < Test::Unit::TestCase 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