mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Prefer "included" language over "setup"
This commit is contained in:
@@ -1,10 +1,13 @@
|
||||
module AbstractController
|
||||
module Callbacks
|
||||
setup do
|
||||
include ActiveSupport::NewCallbacks
|
||||
define_callbacks :process_action
|
||||
extend ActiveSupport::DependencyModule
|
||||
|
||||
depends_on ActiveSupport::NewCallbacks
|
||||
|
||||
included do
|
||||
define_callbacks :process_action
|
||||
end
|
||||
|
||||
|
||||
def process_action
|
||||
_run_process_action_callbacks(action_name) do
|
||||
super
|
||||
|
||||
@@ -3,8 +3,8 @@ module AbstractController
|
||||
extend ActiveSupport::DependencyModule
|
||||
|
||||
depends_on Renderer
|
||||
|
||||
setup do
|
||||
|
||||
included do
|
||||
extlib_inheritable_accessor :master_helper_module
|
||||
self.master_helper_module = Module.new
|
||||
end
|
||||
|
||||
@@ -2,7 +2,7 @@ module AbstractController
|
||||
module Logger
|
||||
extend ActiveSupport::DependencyModule
|
||||
|
||||
setup do
|
||||
included do
|
||||
cattr_accessor :logger
|
||||
end
|
||||
end
|
||||
|
||||
@@ -5,15 +5,15 @@ module AbstractController
|
||||
extend ActiveSupport::DependencyModule
|
||||
|
||||
depends_on AbstractController::Logger
|
||||
|
||||
setup do
|
||||
|
||||
included do
|
||||
attr_internal :formats
|
||||
|
||||
|
||||
extlib_inheritable_accessor :_view_paths
|
||||
|
||||
|
||||
self._view_paths ||= ActionView::PathSet.new
|
||||
end
|
||||
|
||||
|
||||
def _action_view
|
||||
@_action_view ||= ActionView::Base.new(self.class.view_paths, {}, self)
|
||||
end
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
module ActionController
|
||||
module HideActions
|
||||
setup do
|
||||
included do
|
||||
extlib_inheritable_accessor :hidden_actions
|
||||
self.hidden_actions ||= Set.new
|
||||
self.hidden_actions ||= Set.new
|
||||
end
|
||||
|
||||
|
||||
def action_methods() self.class.action_names end
|
||||
def action_names() action_methods end
|
||||
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
module ActiveSupport
|
||||
module DependencyModule
|
||||
def setup(&blk)
|
||||
@_setup_block = blk
|
||||
end
|
||||
|
||||
def append_features(base)
|
||||
return if base < self
|
||||
(@_dependencies ||= []).each { |dep| base.send(:include, dep) }
|
||||
super
|
||||
end
|
||||
|
||||
def included(base)
|
||||
base.extend const_get("ClassMethods") if const_defined?("ClassMethods")
|
||||
base.class_eval(&@_setup_block) if instance_variable_defined?("@_setup_block")
|
||||
def included(base = nil, &block)
|
||||
if base.nil? && block_given?
|
||||
@_included_block = block
|
||||
else
|
||||
base.extend const_get("ClassMethods") if const_defined?("ClassMethods")
|
||||
base.class_eval(&@_included_block) if instance_variable_defined?("@_included_block")
|
||||
end
|
||||
end
|
||||
|
||||
def depends_on(mod)
|
||||
|
||||
@@ -10,17 +10,17 @@ class DependencyModuleTest < Test::Unit::TestCase
|
||||
"baz"
|
||||
end
|
||||
|
||||
def setup=(value)
|
||||
@@setup = value
|
||||
def included_ran=(value)
|
||||
@@included_ran = value
|
||||
end
|
||||
|
||||
def setup
|
||||
@@setup
|
||||
def included_ran
|
||||
@@included_ran
|
||||
end
|
||||
end
|
||||
|
||||
setup do
|
||||
self.setup = true
|
||||
included do
|
||||
self.included_ran = true
|
||||
end
|
||||
|
||||
def baz
|
||||
@@ -62,9 +62,9 @@ class DependencyModuleTest < Test::Unit::TestCase
|
||||
assert_equal DependencyModuleTest::Baz::ClassMethods, (class << @klass; self.included_modules; end)[0]
|
||||
end
|
||||
|
||||
def test_setup_block_is_ran
|
||||
def test_included_block_is_ran
|
||||
@klass.send(:include, Baz)
|
||||
assert_equal true, @klass.setup
|
||||
assert_equal true, @klass.included_ran
|
||||
end
|
||||
|
||||
def test_modules_dependencies_are_met
|
||||
|
||||
Reference in New Issue
Block a user