aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--railties/lib/generators/active_record/model/model_generator.rb8
-rw-r--r--railties/lib/generators/base.rb6
-rw-r--r--railties/test/generators/scaffold_generator_test.rb6
3 files changed, 14 insertions, 6 deletions
diff --git a/railties/lib/generators/active_record/model/model_generator.rb b/railties/lib/generators/active_record/model/model_generator.rb
index 149ce281f3..d337ca4eec 100644
--- a/railties/lib/generators/active_record/model/model_generator.rb
+++ b/railties/lib/generators/active_record/model/model_generator.rb
@@ -11,10 +11,6 @@ module ActiveRecord
class_option :timestamps, :type => :boolean
class_option :parent, :type => :string, :desc => "The parent class for the generated model"
- def create_model_file
- template 'model.rb', File.join('app/models', class_path, "#{file_name}.rb")
- end
-
def create_migration_file
if options[:migration] && options[:parent].nil?
file_name = "create_#{file_path.gsub(/\//, '_').pluralize}"
@@ -22,6 +18,10 @@ module ActiveRecord
end
end
+ def create_model_file
+ template 'model.rb', File.join('app/models', class_path, "#{file_name}.rb")
+ end
+
hook_for :test_framework
protected
diff --git a/railties/lib/generators/base.rb b/railties/lib/generators/base.rb
index aeb79dd339..4b47ebc49b 100644
--- a/railties/lib/generators/base.rb
+++ b/railties/lib/generators/base.rb
@@ -118,7 +118,7 @@ module Rails
def self.hook_for(*names, &block)
options = names.extract_options!
as = options.fetch(:as, generator_name)
- verbose = options.fetch(:verbose, :blue)
+ verbose = options.fetch(:verbose, :white)
names.each do |name|
default = { :desc => "#{name.to_s.humanize} to be invoked", :banner => "NAME" }
@@ -196,7 +196,7 @@ module Rails
def self.invoke_if(*names, &block)
options = names.extract_options!.merge(:type => :boolean)
as = options.fetch(:as, generator_name)
- verbose = options.fetch(:verbose, :blue)
+ verbose = options.fetch(:verbose, :white)
names.each do |name|
class_option name, options
@@ -267,11 +267,13 @@ module Rails
# in case the user wants to customize how the class is invoked.
#
def invoke_class_with_block(name, klass) #:nodoc:
+ shell.padding += 1
if block = self.class.invocation_blocks[name]
block.call(self, klass)
else
invoke klass
end
+ shell.padding -= 1
end
# Check whether the given class names are already taken by user
diff --git a/railties/test/generators/scaffold_generator_test.rb b/railties/test/generators/scaffold_generator_test.rb
index 85c039a9cb..dfa11fd84b 100644
--- a/railties/test/generators/scaffold_generator_test.rb
+++ b/railties/test/generators/scaffold_generator_test.rb
@@ -131,6 +131,12 @@ class ScaffoldGeneratorTest < GeneratorsTestCase
assert_file "public/stylesheets/scaffold.css"
end
+ def test_invoke_output
+ output = run_generator
+ assert_match /invoke.{4} active_record/, output
+ assert_match /create.{4} app\/models\/product_line\.rb/, output
+ end
+
protected
def run_generator(config={})