Extract common controllers to abstract_unit

上级 0dd24728
......@@ -349,3 +349,32 @@ def url_for(set, options, recall = nil)
set.send(:url_for, options.merge(:only_path => true, :_recall => recall))
end
end
class ResourcesController < ActionController::Base
def index() render :nothing => true end
alias_method :show, :index
end
class ThreadsController < ResourcesController; end
class MessagesController < ResourcesController; end
class CommentsController < ResourcesController; end
class AuthorsController < ResourcesController; end
class LogosController < ResourcesController; end
class AccountsController < ResourcesController; end
class AdminController < ResourcesController; end
class ProductsController < ResourcesController; end
class ImagesController < ResourcesController; end
class PreferencesController < ResourcesController; end
module Backoffice
class ProductsController < ResourcesController; end
class TagsController < ResourcesController; end
class ManufacturersController < ResourcesController; end
class ImagesController < ResourcesController; end
module Admin
class ProductsController < ResourcesController; end
class ImagesController < ResourcesController; end
end
end
......@@ -2,35 +2,6 @@
require 'active_support/core_ext/object/try'
require 'active_support/core_ext/object/with_options'
class ResourcesController < ActionController::Base
def index() render :nothing => true end
alias_method :show, :index
end
class ThreadsController < ResourcesController; end
class MessagesController < ResourcesController; end
class CommentsController < ResourcesController; end
class AuthorsController < ResourcesController; end
class LogosController < ResourcesController; end
class AccountsController < ResourcesController; end
class AdminController < ResourcesController; end
class ProductsController < ResourcesController; end
class ImagesController < ResourcesController; end
class PreferencesController < ResourcesController; end
module Backoffice
class ProductsController < ResourcesController; end
class TagsController < ResourcesController; end
class ManufacturersController < ResourcesController; end
class ImagesController < ResourcesController; end
module Admin
class ProductsController < ResourcesController; end
class ImagesController < ResourcesController; end
end
end
class ResourcesTest < ActionController::TestCase
def test_default_restful_routes
with_restful_routing :messages do
......
require 'abstract_unit'
class CommentsController < ActionController::Base
def index
head :ok
end
end
class ImageAttachmentsController < ActionController::Base
def index
head :ok
end
end
class RoutingConcernsTest < ActionDispatch::IntegrationTest
Routes = ActionDispatch::Routing::RouteSet.new.tap do |app|
app.draw do
......@@ -20,7 +8,7 @@ class RoutingConcernsTest < ActionDispatch::IntegrationTest
end
concern :image_attachable do
resources :image_attachments, only: :index
resources :images, only: :index
end
resources :posts, concerns: [:commentable, :image_attachable] do
......@@ -65,13 +53,13 @@ def test_accessing_concern_from_nested_resources
end
def test_accessing_concern_from_resources_with_more_than_one_concern
get "/posts/1/image_attachments"
get "/posts/1/images"
assert_equal "200", @response.code
assert_equal "/posts/1/image_attachments", post_image_attachments_path(post_id: 1)
assert_equal "/posts/1/images", post_images_path(post_id: 1)
end
def test_accessing_concern_from_resources_using_only_option
get "/posts/1/image_attachment/1"
get "/posts/1/image/1"
assert_equal "404", @response.code
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册