aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2009-06-25 13:46:19 +0200
committerJosé Valim <jose.valim@gmail.com>2009-06-25 13:46:19 +0200
commitd5bdf31d892136d59302adb14328db0417c70d76 (patch)
treeac6b2c6ee32194409c4559ce4e204c40fc483df3 /railties/lib
parent6e6c0117b30226f031771acb9715318987067f51 (diff)
downloadrails-d5bdf31d892136d59302adb14328db0417c70d76.tar.gz
rails-d5bdf31d892136d59302adb14328db0417c70d76.tar.bz2
rails-d5bdf31d892136d59302adb14328db0417c70d76.zip
Refactoring out descriptions.
Diffstat (limited to 'railties/lib')
-rw-r--r--railties/lib/generators/base.rb25
-rw-r--r--railties/lib/generators/erb/mailer/mailer_generator.rb5
-rw-r--r--railties/lib/generators/test_unit/mailer/mailer_generator.rb5
-rw-r--r--railties/lib/generators/test_unit/observer/observer_generator.rb5
-rw-r--r--railties/lib/generators/test_unit/plugin/plugin_generator.rb5
5 files changed, 18 insertions, 27 deletions
diff --git a/railties/lib/generators/base.rb b/railties/lib/generators/base.rb
index e009998bfa..c00ce9d342 100644
--- a/railties/lib/generators/base.rb
+++ b/railties/lib/generators/base.rb
@@ -15,16 +15,27 @@ module Rails
@source_root ||= File.expand_path(File.join(File.dirname(__FILE__), base_name, generator_name, 'templates'))
end
+ # Tries to get the description from a USAGE file one folder above the source
+ # root otherwise uses a default description.
+ #
+ def self.desc(description=nil)
+ return super if description
+ usage = File.join(source_root, "..", "USAGE")
+
+ @desc ||= if File.exist?(usage)
+ File.read(usage)
+ else
+ "Description:\n Create #{base_name.humanize.downcase} files for #{generator_name} generator."
+ end
+ end
+
# Convenience method to get the namespace from the class name. It's the
# same as Thor default except that the Generator at the end of the class
# is removed.
#
- def self.namespace(name=nil) #:nodoc:
- if name
- super
- else
- @namespace ||= "#{base_name}:generators:#{generator_name}"
- end
+ def self.namespace(name=nil)
+ return super if name
+ @namespace ||= "#{base_name}:generators:#{generator_name}"
end
protected
@@ -70,7 +81,7 @@ module Rails
# Sets the base_name taking into account the current class namespace.
#
- def self.base_name #:nodoc:
+ def self.base_name
@base_name ||= self.name.split('::').first.underscore
end
diff --git a/railties/lib/generators/erb/mailer/mailer_generator.rb b/railties/lib/generators/erb/mailer/mailer_generator.rb
index 2458762a9d..9b615d6608 100644
--- a/railties/lib/generators/erb/mailer/mailer_generator.rb
+++ b/railties/lib/generators/erb/mailer/mailer_generator.rb
@@ -3,11 +3,6 @@ module Erb
class MailerGenerator < Base
argument :actions, :type => :array, :default => []
- desc <<DESC
-Description:
- Create Template engine files for mailer generator.
-DESC
-
def create_view_files
actions.each do |action|
@action, @path = action, File.join(file_path, action)
diff --git a/railties/lib/generators/test_unit/mailer/mailer_generator.rb b/railties/lib/generators/test_unit/mailer/mailer_generator.rb
index 5fa7751076..125371b173 100644
--- a/railties/lib/generators/test_unit/mailer/mailer_generator.rb
+++ b/railties/lib/generators/test_unit/mailer/mailer_generator.rb
@@ -3,11 +3,6 @@ module TestUnit
class MailerGenerator < Base
argument :actions, :type => :array, :default => []
- desc <<DESC
-Description:
- Create TestUnit files for mailer generator.
-DESC
-
def create_test_files
template "unit_test.rb", File.join('test', 'unit', class_path, "#{file_name}_test.rb")
end
diff --git a/railties/lib/generators/test_unit/observer/observer_generator.rb b/railties/lib/generators/test_unit/observer/observer_generator.rb
index 1f0613007b..adfd90a086 100644
--- a/railties/lib/generators/test_unit/observer/observer_generator.rb
+++ b/railties/lib/generators/test_unit/observer/observer_generator.rb
@@ -1,11 +1,6 @@
module TestUnit
module Generators
class ObserverGenerator < Base
- desc <<DESC
-Description:
- Create TestUnit files for observer generator.
-DESC
-
def create_test_files
template 'unit_test.rb', File.join('test', 'unit', class_path, "#{file_name}_observer_test.rb")
end
diff --git a/railties/lib/generators/test_unit/plugin/plugin_generator.rb b/railties/lib/generators/test_unit/plugin/plugin_generator.rb
index 1c987ab1c9..427a7bd8f5 100644
--- a/railties/lib/generators/test_unit/plugin/plugin_generator.rb
+++ b/railties/lib/generators/test_unit/plugin/plugin_generator.rb
@@ -1,11 +1,6 @@
module TestUnit
module Generators
class PluginGenerator < Base
- desc <<DESC
-Description:
- Create TestUnit files for plugin generator.
-DESC
-
def create_test_files
directory 'test'
end