aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/CHANGELOG.md15
-rw-r--r--actionpack/test/dispatch/routing/inspector_test.rb17
-rw-r--r--actionpack/test/dispatch/routing/route_set_test.rb2
-rw-r--r--actionpack/test/dispatch/routing_test.rb10
4 files changed, 37 insertions, 7 deletions
diff --git a/actionpack/CHANGELOG.md b/actionpack/CHANGELOG.md
index 4e67627d8b..a7231b9e59 100644
--- a/actionpack/CHANGELOG.md
+++ b/actionpack/CHANGELOG.md
@@ -1,9 +1,20 @@
-* Add ability to set a prefix name for routes which have hyphen(s).
+* Automatically convert dashes to underscores for shorthand routes, e.g:
+
+ get '/our-work/latest'
+
+ When running `rake routes` you will get the following output:
+
+ Prefix Verb URI Pattern Controller#Action
+ our_work_latest GET /our-work/latest(.:format) our_work#latest
+
+ *Mikko Johansson*
+
+* Automatically convert dashes to underscores for url helpers, e.g:
get '/contact-us' => 'pages#contact'
get '/about-us' => 'pages#about_us'
- The above routes will inspected to
+ When running `rake routes` you will get the following output:
Prefix Verb URI Pattern Controller#Action
contact_us GET /contact-us(.:format) pages#contact
diff --git a/actionpack/test/dispatch/routing/inspector_test.rb b/actionpack/test/dispatch/routing/inspector_test.rb
index 2746c683ba..8045464284 100644
--- a/actionpack/test/dispatch/routing/inspector_test.rb
+++ b/actionpack/test/dispatch/routing/inspector_test.rb
@@ -37,7 +37,6 @@ module ActionDispatch
end
engine.routes.draw do
get '/cart', :to => 'cart#show'
- get '/view-cart', :to => 'cart#show'
end
output = draw do
@@ -51,8 +50,7 @@ module ActionDispatch
" blog /blog Blog::Engine",
"",
"Routes for Blog::Engine:",
- " cart GET /cart(.:format) cart#show",
- "view_cart GET /view-cart(.:format) cart#show"
+ " cart GET /cart(.:format) cart#show"
], output
end
@@ -162,6 +160,19 @@ module ActionDispatch
], output
end
+ def test_rake_routes_shows_routes_with_dashes
+ output = draw do
+ get 'about-us' => 'pages#about_us'
+ get 'our-work/latest'
+ end
+
+ assert_equal [
+ " Prefix Verb URI Pattern Controller#Action",
+ " about_us GET /about-us(.:format) pages#about_us",
+ "our_work_latest GET /our-work/latest(.:format) our_work#latest"
+ ], output
+ end
+
class RackApp
def self.call(env)
end
diff --git a/actionpack/test/dispatch/routing/route_set_test.rb b/actionpack/test/dispatch/routing/route_set_test.rb
index 3831c4c585..0e488d2b88 100644
--- a/actionpack/test/dispatch/routing/route_set_test.rb
+++ b/actionpack/test/dispatch/routing/route_set_test.rb
@@ -30,12 +30,10 @@ module ActionDispatch
draw do
get 'foo', to: SimpleApp.new('foo#index')
get 'bar', to: SimpleApp.new('bar#index')
- get 'foo-bar', to: SimpleApp.new('bar#index')
end
assert_equal '/foo', url_helpers.foo_path
assert_equal '/bar', url_helpers.bar_path
- assert_equal '/foo-bar', url_helpers.foo_bar_path
end
test "url helpers are updated when route is updated" do
diff --git a/actionpack/test/dispatch/routing_test.rb b/actionpack/test/dispatch/routing_test.rb
index 497c3e568c..ebea5a8792 100644
--- a/actionpack/test/dispatch/routing_test.rb
+++ b/actionpack/test/dispatch/routing_test.rb
@@ -2912,6 +2912,16 @@ class TestRoutingMapper < ActionDispatch::IntegrationTest
assert @response.ok?, 'route with trailing slash and with QUERY_STRING should work'
end
+ def test_route_with_dashes_in_path
+ draw do
+ get '/contact-us', to: 'pages#contact_us'
+ end
+
+ get '/contact-us'
+ assert_equal 'pages#contact_us', @response.body
+ assert_equal '/contact-us', contact_us_path
+ end
+
def test_shorthand_route_with_dashes_in_path
draw do
get '/about-us/index'