mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Raise an exception if an initializer is defined without a block
This commit is contained in:
@@ -93,6 +93,7 @@ module Rails
|
||||
end
|
||||
|
||||
def initializer(name, opts = {}, &blk)
|
||||
raise ArgumentError, "A block must be passed when defining an initializer" unless blk
|
||||
@initializers ||= []
|
||||
@initializers << Initializer.new(name, nil, opts, &blk)
|
||||
end
|
||||
|
||||
@@ -150,6 +150,16 @@ module InitializableTests
|
||||
Word.run_initializers
|
||||
assert_equal "bird", $word
|
||||
end
|
||||
|
||||
test "creating initializer without a block raises an error" do
|
||||
assert_raise(ArgumentError) do
|
||||
Class.new do
|
||||
include Rails::Initializable
|
||||
|
||||
initializer :foo
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
class BeforeAfter < ActiveSupport::TestCase
|
||||
|
||||
Reference in New Issue
Block a user