Prefer "included" language over "setup"

This commit is contained in:
Joshua Peek
2009-05-07 10:38:57 -05:00
parent 2854535b02
commit af40fa6d03
7 changed files with 33 additions and 30 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -2,7 +2,7 @@ module AbstractController
module Logger
extend ActiveSupport::DependencyModule
setup do
included do
cattr_accessor :logger
end
end

View File

@@ -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

View File

@@ -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

View File

@@ -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)

View File

@@ -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