diff options
author | Joshua Peek <josh@joshpeek.com> | 2010-01-15 15:59:07 -0600 |
---|---|---|
committer | Joshua Peek <josh@joshpeek.com> | 2010-01-15 16:13:01 -0600 |
commit | 576b8dda52b0d0d099f88241ef6f4ec1e1248c3b (patch) | |
tree | 216cf3c5507ba852ddcbdb0fc58f886ce7c5c564 | |
parent | 21ce8eac9b9bd8e14e3396caf2e30751889e26cb (diff) | |
download | rails-576b8dda52b0d0d099f88241ef6f4ec1e1248c3b.tar.gz rails-576b8dda52b0d0d099f88241ef6f4ec1e1248c3b.tar.bz2 rails-576b8dda52b0d0d099f88241ef6f4ec1e1248c3b.zip |
Cleanup internal resource macro to use method helper shorthand
-rw-r--r-- | actionpack/lib/action_dispatch/routing/mapper.rb | 34 | ||||
-rw-r--r-- | actionpack/test/dispatch/routing_test.rb | 12 |
2 files changed, 26 insertions, 20 deletions
diff --git a/actionpack/lib/action_dispatch/routing/mapper.rb b/actionpack/lib/action_dispatch/routing/mapper.rb index 6ff573443b..3c13cf88f4 100644 --- a/actionpack/lib/action_dispatch/routing/mapper.rb +++ b/actionpack/lib/action_dispatch/routing/mapper.rb @@ -344,7 +344,7 @@ module ActionDispatch end module Resources - CRUD_ACTIONS = [:index, :show, :new, :edit, :create, :update, :destroy] + CRUD_ACTIONS = [:index, :show, :create, :update, :destroy] class Resource #:nodoc: def self.default_actions @@ -444,12 +444,12 @@ module ActionDispatch with_scope_level(:resource, resource) do yield if block_given? - get "(.:format)", :to => :show, :as => resource.member_name if resource.actions.include?(:show) - post "(.:format)", :to => :create if resource.actions.include?(:create) - put "(.:format)", :to => :update if resource.actions.include?(:update) - delete "(.:format)", :to => :destroy if resource.actions.include?(:destroy) - get "/#{action_path(:new)}(.:format)", :to => :new, :as => "new_#{resource.singular}" if resource.actions.include?(:new) - get "/#{action_path(:edit)}(.:format)", :to => :edit, :as => "edit_#{resource.singular}" if resource.actions.include?(:edit) + get :show, :as => resource.member_name if resource.actions.include?(:show) + post :create if resource.actions.include?(:create) + put :update if resource.actions.include?(:update) + delete :destroy if resource.actions.include?(:destroy) + get :new, :as => "new_#{resource.singular}" if resource.actions.include?(:new) + get :edit, :as => "edit_#{resource.singular}" if resource.actions.include?(:edit) end end @@ -486,23 +486,17 @@ module ActionDispatch yield if block_given? with_scope_level(:collection) do - get "(.:format)", :to => :index, :as => resource.collection_name if resource.actions.include?(:index) - post "(.:format)", :to => :create if resource.actions.include?(:create) - - with_exclusive_name_prefix :new do - get "/#{action_path(:new)}(.:format)", :to => :new, :as => resource.singular if resource.actions.include?(:new) - end + get :index, :as => resource.collection_name if resource.actions.include?(:index) + post :create if resource.actions.include?(:create) + get :new, :as => resource.singular if resource.actions.include?(:new) end with_scope_level(:member) do scope("/:id") do - get "(.:format)", :to => :show, :as => resource.member_name if resource.actions.include?(:show) - put "(.:format)", :to => :update if resource.actions.include?(:update) - delete "(.:format)", :to => :destroy if resource.actions.include?(:destroy) - - with_exclusive_name_prefix :edit do - get "/#{action_path(:edit)}(.:format)", :to => :edit, :as => resource.singular if resource.actions.include?(:edit) - end + get :show, :as => resource.member_name if resource.actions.include?(:show) + put :update if resource.actions.include?(:update) + delete :destroy if resource.actions.include?(:destroy) + get :edit, :as => resource.singular if resource.actions.include?(:edit) end end end diff --git a/actionpack/test/dispatch/routing_test.rb b/actionpack/test/dispatch/routing_test.rb index 2fcc5fef35..23581c8a17 100644 --- a/actionpack/test/dispatch/routing_test.rb +++ b/actionpack/test/dispatch/routing_test.rb @@ -211,8 +211,17 @@ class TestRoutingMapper < ActionDispatch::IntegrationTest post '/session' assert_equal 'sessions#create', @response.body + put '/session' + assert_equal 'sessions#update', @response.body + + delete '/session' + assert_equal 'sessions#destroy', @response.body + get '/session/new' assert_equal 'sessions#new', @response.body + + get '/session/edit' + assert_equal 'sessions#edit', @response.body end end @@ -284,6 +293,9 @@ class TestRoutingMapper < ActionDispatch::IntegrationTest assert_equal 'projects#index', @response.body assert_equal '/projects', projects_path + post '/projects' + assert_equal 'projects#create', @response.body + get '/projects.xml' assert_equal 'projects#index', @response.body assert_equal '/projects.xml', projects_path(:format => 'xml') |