aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/test/controller/url_rewriter_test.rb
diff options
context:
space:
mode:
authorNicholas Seckar <nseckar@gmail.com>2006-09-06 22:21:36 +0000
committerNicholas Seckar <nseckar@gmail.com>2006-09-06 22:21:36 +0000
commit00685ad8fdc9f15d935aebe52597037f3ca93be8 (patch)
treebf1298623047c9b5f3262bd0db651c92318a726b /actionpack/test/controller/url_rewriter_test.rb
parent93659978d50cd95936f81f38a57028cc68a235ee (diff)
downloadrails-00685ad8fdc9f15d935aebe52597037f3ca93be8.tar.gz
rails-00685ad8fdc9f15d935aebe52597037f3ca93be8.tar.bz2
rails-00685ad8fdc9f15d935aebe52597037f3ca93be8.zip
Update UrlWriter to support :only_path.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5054 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/test/controller/url_rewriter_test.rb')
-rw-r--r--actionpack/test/controller/url_rewriter_test.rb26
1 files changed, 24 insertions, 2 deletions
diff --git a/actionpack/test/controller/url_rewriter_test.rb b/actionpack/test/controller/url_rewriter_test.rb
index f71f79db47..53cd278b6b 100644
--- a/actionpack/test/controller/url_rewriter_test.rb
+++ b/actionpack/test/controller/url_rewriter_test.rb
@@ -84,10 +84,32 @@ class UrlWriterTests < Test::Unit::TestCase
# We need to create a new class in order to install the new named route.
kls = Class.new { include ActionController::UrlWriter }
- assert kls.new.respond_to?(:home_url)
+ controller = kls.new
+ assert controller.respond_to?(:home_url)
assert_equal 'http://www.basecamphq.com/home/sweet/home/again',
- kls.new.send(:home_url, :host => 'www.basecamphq.com', :user => 'again')
+ controller.send(:home_url, :host => 'www.basecamphq.com', :user => 'again')
+
+ assert_equal("/home/sweet/home/alabama", controller.send(:home_path, :user => 'alabama', :host => 'unused'))
ensure
ActionController::Routing::Routes.load!
end
+
+ def test_only_path
+ ActionController::Routing::Routes.draw do |map|
+ map.home '/home/sweet/home/:user'
+ map.connect ':controller/:action/:id'
+ end
+
+ # We need to create a new class in order to install the new named route.
+ kls = Class.new { include ActionController::UrlWriter }
+ controller = kls.new
+ assert controller.respond_to?(:home_url)
+ assert_equal '/brave/new/world',
+ controller.send(:url_for, :controller => 'brave', :action => 'new', :id => 'world', :only_path => true)
+
+ assert_equal("/home/sweet/home/alabama", controller.send(:home_url, :user => 'alabama', :host => 'unused', :only_path => true))
+ ensure
+ ActionController::Routing::Routes.load!
+ end
+
end