aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails')
-rw-r--r--railties/lib/rails/commands/application.rb2
-rw-r--r--railties/lib/rails/generators/app_base.rb2
-rw-r--r--railties/lib/rails/generators/base.rb2
-rw-r--r--railties/lib/rails/generators/css/assets/assets_generator.rb6
-rw-r--r--railties/lib/rails/generators/css/scaffold/scaffold_generator.rb6
-rw-r--r--railties/lib/rails/generators/erb.rb4
-rw-r--r--railties/lib/rails/generators/erb/controller/controller_generator.rb6
-rw-r--r--railties/lib/rails/generators/erb/mailer/mailer_generator.rb6
-rw-r--r--railties/lib/rails/generators/erb/scaffold/scaffold_generator.rb6
-rw-r--r--railties/lib/rails/generators/generated_attribute.rb2
-rw-r--r--railties/lib/rails/generators/js/assets/assets_generator.rb6
-rw-r--r--railties/lib/rails/generators/rails/app/app_generator.rb10
-rw-r--r--railties/lib/rails/generators/rails/app/templates/Gemfile5
-rw-r--r--railties/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml4
-rw-r--r--railties/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt3
-rw-r--r--railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt4
-rw-r--r--railties/lib/rails/generators/rails/assets/assets_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/controller/USAGE8
-rw-r--r--railties/lib/rails/generators/rails/controller/controller_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/generator/generator_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/helper/USAGE2
-rw-r--r--railties/lib/rails/generators/rails/helper/helper_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/integration_test/integration_test_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/migration/migration_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/model/USAGE4
-rw-r--r--railties/lib/rails/generators/rails/model/model_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/observer/USAGE2
-rw-r--r--railties/lib/rails/generators/rails/observer/observer_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/performance_test/performance_test_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb9
-rw-r--r--railties/lib/rails/generators/rails/resource/resource_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/resource_route/resource_route_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/scaffold_controller/USAGE8
-rw-r--r--railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/task/task_generator.rb2
-rw-r--r--railties/lib/rails/generators/resource_helpers.rb4
-rw-r--r--railties/lib/rails/generators/test_case.rb25
-rw-r--r--railties/lib/rails/generators/test_unit.rb6
-rw-r--r--railties/lib/rails/generators/test_unit/controller/controller_generator.rb8
-rw-r--r--railties/lib/rails/generators/test_unit/helper/helper_generator.rb8
-rw-r--r--railties/lib/rails/generators/test_unit/integration/integration_generator.rb6
-rw-r--r--railties/lib/rails/generators/test_unit/mailer/mailer_generator.rb8
-rw-r--r--railties/lib/rails/generators/test_unit/model/model_generator.rb8
-rw-r--r--railties/lib/rails/generators/test_unit/observer/observer_generator.rb8
-rw-r--r--railties/lib/rails/generators/test_unit/performance/performance_generator.rb6
-rw-r--r--railties/lib/rails/generators/test_unit/plugin/plugin_generator.rb6
-rw-r--r--railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb8
-rw-r--r--railties/lib/rails/source_annotation_extractor.rb14
-rw-r--r--railties/lib/rails/tasks/statistics.rake8
-rw-r--r--railties/lib/rails/test_unit/testing.rake36
51 files changed, 158 insertions, 136 deletions
diff --git a/railties/lib/rails/commands/application.rb b/railties/lib/rails/commands/application.rb
index 2cb6d5ca2e..ff0eda3413 100644
--- a/railties/lib/rails/commands/application.rb
+++ b/railties/lib/rails/commands/application.rb
@@ -24,7 +24,7 @@ require 'rails/generators/rails/app/app_generator'
module Rails
module Generators
- class AppGenerator
+ class AppGenerator # :nodoc:
# We want to exit on failure to be kind to other libraries
# This is only when accessing via CLI
def self.exit_on_failure?
diff --git a/railties/lib/rails/generators/app_base.rb b/railties/lib/rails/generators/app_base.rb
index 44c6507b08..e761e26b04 100644
--- a/railties/lib/rails/generators/app_base.rb
+++ b/railties/lib/rails/generators/app_base.rb
@@ -8,7 +8,7 @@ require 'uri'
module Rails
module Generators
- class AppBase < Base
+ class AppBase < Base # :nodoc:
DATABASES = %w( mysql oracle postgresql sqlite3 frontbase ibm_db sqlserver )
JDBC_DATABASES = %w( jdbcmysql jdbcsqlite3 jdbcpostgresql jdbc )
DATABASES.concat(JDBC_DATABASES)
diff --git a/railties/lib/rails/generators/base.rb b/railties/lib/rails/generators/base.rb
index c2accf0387..5ca1bfc20f 100644
--- a/railties/lib/rails/generators/base.rb
+++ b/railties/lib/rails/generators/base.rb
@@ -11,7 +11,7 @@ require 'rails/generators/actions'
module Rails
module Generators
- class Error < Thor::Error
+ class Error < Thor::Error # :nodoc:
end
class Base < Thor::Group
diff --git a/railties/lib/rails/generators/css/assets/assets_generator.rb b/railties/lib/rails/generators/css/assets/assets_generator.rb
index 492177ca2e..e4a305f4b3 100644
--- a/railties/lib/rails/generators/css/assets/assets_generator.rb
+++ b/railties/lib/rails/generators/css/assets/assets_generator.rb
@@ -1,8 +1,8 @@
require "rails/generators/named_base"
-module Css
- module Generators
- class AssetsGenerator < Rails::Generators::NamedBase
+module Css # :nodoc:
+ module Generators # :nodoc:
+ class AssetsGenerator < Rails::Generators::NamedBase # :nodoc:
source_root File.expand_path("../templates", __FILE__)
def copy_stylesheet
diff --git a/railties/lib/rails/generators/css/scaffold/scaffold_generator.rb b/railties/lib/rails/generators/css/scaffold/scaffold_generator.rb
index 1d7fe9fac0..cf534030f9 100644
--- a/railties/lib/rails/generators/css/scaffold/scaffold_generator.rb
+++ b/railties/lib/rails/generators/css/scaffold/scaffold_generator.rb
@@ -1,8 +1,8 @@
require "rails/generators/named_base"
-module Css
- module Generators
- class ScaffoldGenerator < Rails::Generators::NamedBase
+module Css # :nodoc:
+ module Generators # :nodoc:
+ class ScaffoldGenerator < Rails::Generators::NamedBase # :nodoc:
# In order to allow the Sass generators to pick up the default Rails CSS and
# transform it, we leave it in a standard location for the CSS stylesheet
# generators to handle. For the simple, default case, just copy it over.
diff --git a/railties/lib/rails/generators/erb.rb b/railties/lib/rails/generators/erb.rb
index 3e6371268f..73e986ee7f 100644
--- a/railties/lib/rails/generators/erb.rb
+++ b/railties/lib/rails/generators/erb.rb
@@ -1,7 +1,7 @@
require 'rails/generators/named_base'
-module Erb
- module Generators
+module Erb # :nodoc:
+ module Generators # :nodoc:
class Base < Rails::Generators::NamedBase #:nodoc:
protected
diff --git a/railties/lib/rails/generators/erb/controller/controller_generator.rb b/railties/lib/rails/generators/erb/controller/controller_generator.rb
index ac57140c23..89e6361f93 100644
--- a/railties/lib/rails/generators/erb/controller/controller_generator.rb
+++ b/railties/lib/rails/generators/erb/controller/controller_generator.rb
@@ -1,8 +1,8 @@
require 'rails/generators/erb'
-module Erb
- module Generators
- class ControllerGenerator < Base
+module Erb # :nodoc:
+ module Generators # :nodoc:
+ class ControllerGenerator < Base # :nodoc:
argument :actions, :type => :array, :default => [], :banner => "action action"
def copy_view_files
diff --git a/railties/lib/rails/generators/erb/mailer/mailer_generator.rb b/railties/lib/rails/generators/erb/mailer/mailer_generator.rb
index 943d0c9f8d..7bcac30dde 100644
--- a/railties/lib/rails/generators/erb/mailer/mailer_generator.rb
+++ b/railties/lib/rails/generators/erb/mailer/mailer_generator.rb
@@ -1,8 +1,8 @@
require 'rails/generators/erb/controller/controller_generator'
-module Erb
- module Generators
- class MailerGenerator < ControllerGenerator
+module Erb # :nodoc:
+ module Generators # :nodoc:
+ class MailerGenerator < ControllerGenerator # :nodoc:
protected
def format
diff --git a/railties/lib/rails/generators/erb/scaffold/scaffold_generator.rb b/railties/lib/rails/generators/erb/scaffold/scaffold_generator.rb
index b2c8d7051b..54ed648df4 100644
--- a/railties/lib/rails/generators/erb/scaffold/scaffold_generator.rb
+++ b/railties/lib/rails/generators/erb/scaffold/scaffold_generator.rb
@@ -1,9 +1,9 @@
require 'rails/generators/erb'
require 'rails/generators/resource_helpers'
-module Erb
- module Generators
- class ScaffoldGenerator < Base
+module Erb # :nodoc:
+ module Generators # :nodoc:
+ class ScaffoldGenerator < Base # :nodoc:
include Rails::Generators::ResourceHelpers
argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
diff --git a/railties/lib/rails/generators/generated_attribute.rb b/railties/lib/rails/generators/generated_attribute.rb
index d2c2abf40c..231813f774 100644
--- a/railties/lib/rails/generators/generated_attribute.rb
+++ b/railties/lib/rails/generators/generated_attribute.rb
@@ -2,7 +2,7 @@ require 'active_support/time'
module Rails
module Generators
- class GeneratedAttribute
+ class GeneratedAttribute # :nodoc:
INDEX_OPTIONS = %w(index uniq)
UNIQ_INDEX_OPTIONS = %w(uniq)
diff --git a/railties/lib/rails/generators/js/assets/assets_generator.rb b/railties/lib/rails/generators/js/assets/assets_generator.rb
index d134a9e392..1e925b2cd2 100644
--- a/railties/lib/rails/generators/js/assets/assets_generator.rb
+++ b/railties/lib/rails/generators/js/assets/assets_generator.rb
@@ -1,8 +1,8 @@
require "rails/generators/named_base"
-module Js
- module Generators
- class AssetsGenerator < Rails::Generators::NamedBase
+module Js # :nodoc:
+ module Generators # :nodoc:
+ class AssetsGenerator < Rails::Generators::NamedBase # :nodoc:
source_root File.expand_path("../templates", __FILE__)
def copy_javascript
diff --git a/railties/lib/rails/generators/rails/app/app_generator.rb b/railties/lib/rails/generators/rails/app/app_generator.rb
index b71b16b043..67e7c4d54f 100644
--- a/railties/lib/rails/generators/rails/app/app_generator.rb
+++ b/railties/lib/rails/generators/rails/app/app_generator.rb
@@ -1,7 +1,7 @@
require 'rails/generators/app_base'
module Rails
- module ActionMethods
+ module ActionMethods # :nodoc:
attr_reader :options
def initialize(generator)
@@ -113,9 +113,11 @@ module Rails
def test
empty_directory_with_keep_file 'test/fixtures'
- empty_directory_with_keep_file 'test/functional'
+ empty_directory_with_keep_file 'test/controllers'
+ empty_directory_with_keep_file 'test/mailers'
+ empty_directory_with_keep_file 'test/models'
+ empty_directory_with_keep_file 'test/helpers'
empty_directory_with_keep_file 'test/integration'
- empty_directory_with_keep_file 'test/unit'
template 'test/performance/browsing_test.rb'
template 'test/test_helper.rb'
@@ -146,7 +148,7 @@ module Rails
RAILS_DEV_PATH = File.expand_path("../../../../../..", File.dirname(__FILE__))
RESERVED_NAMES = %w[application destroy benchmarker profiler plugin runner test]
- class AppGenerator < AppBase
+ class AppGenerator < AppBase # :nodoc:
add_shared_options_for "application"
# Add bin/rails options
diff --git a/railties/lib/rails/generators/rails/app/templates/Gemfile b/railties/lib/rails/generators/rails/app/templates/Gemfile
index e5aa153e29..30f8a5f75e 100644
--- a/railties/lib/rails/generators/rails/app/templates/Gemfile
+++ b/railties/lib/rails/generators/rails/app/templates/Gemfile
@@ -9,13 +9,10 @@ source 'https://rubygems.org'
<%= assets_gemfile_entry %>
<%= javascript_gemfile_entry %>
-# Puts a simple HTTP cache in front of your app (and gets you ready for later upgrading to nginx/varnish/squid)
-# gem 'rack-cache', '~> 1.2'
-
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
-# Build JSON APIs with ease. Read more: http://github.com/rails/jbuilder
+# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
# gem 'jbuilder'
# Use unicorn as the app server
diff --git a/railties/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml b/railties/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml
index 07223a71c9..22c9194fad 100644
--- a/railties/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml
+++ b/railties/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml
@@ -2,7 +2,9 @@
#
# Install the pg driver:
# gem install pg
-# On Mac OS X with macports:
+# On OS X with Homebrew:
+# gem install pg -- --with-pg-config=/usr/local/bin/pg_config
+# On OS X with MacPorts:
# gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config
# On Windows:
# gem install pg
diff --git a/railties/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt b/railties/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt
index 3629920c30..74457b0efd 100644
--- a/railties/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt
+++ b/railties/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt
@@ -60,7 +60,8 @@
# config.assets.precompile += %w( search.js )
<%- end -%>
- # Disable delivery errors, bad email addresses will be ignored.
+ # Ignore bad email addresses and do not raise email delivery errors.
+ # Set this to true and configure the email server for immediate delivery to raise delivery errors.
# config.action_mailer.raise_delivery_errors = false
# Enable threaded mode.
diff --git a/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt b/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
index 202fc98adf..fe2820f64e 100644
--- a/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
+++ b/railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
@@ -34,6 +34,6 @@
# Print deprecation notices to the stderr.
config.active_support.deprecation = :stderr
- # Use the testing queue.
- config.queue = ActiveSupport::TestQueue
+ # Use the synchronous queue to run jobs immediately.
+ config.queue = ActiveSupport::SynchronousQueue
end
diff --git a/railties/lib/rails/generators/rails/assets/assets_generator.rb b/railties/lib/rails/generators/rails/assets/assets_generator.rb
index 2e7f25a0b7..e4f07bba2e 100644
--- a/railties/lib/rails/generators/rails/assets/assets_generator.rb
+++ b/railties/lib/rails/generators/rails/assets/assets_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class AssetsGenerator < NamedBase
+ class AssetsGenerator < NamedBase # :nodoc:
class_option :javascripts, :type => :boolean, :desc => "Generate JavaScripts"
class_option :stylesheets, :type => :boolean, :desc => "Generate Stylesheets"
diff --git a/railties/lib/rails/generators/rails/controller/USAGE b/railties/lib/rails/generators/rails/controller/USAGE
index b658777b12..9def4af65c 100644
--- a/railties/lib/rails/generators/rails/controller/USAGE
+++ b/railties/lib/rails/generators/rails/controller/USAGE
@@ -12,7 +12,7 @@ Example:
`rails generate controller CreditCards open debit credit close`
CreditCards controller with URLs like /credit_cards/debit.
- Controller: app/controllers/credit_cards_controller.rb
- Functional Test: test/functional/credit_cards_controller_test.rb
- Views: app/views/credit_cards/debit.html.erb [...]
- Helper: app/helpers/credit_cards_helper.rb
+ Controller: app/controllers/credit_cards_controller.rb
+ Test: test/controllers/credit_cards_controller_test.rb
+ Views: app/views/credit_cards/debit.html.erb [...]
+ Helper: app/helpers/credit_cards_helper.rb
diff --git a/railties/lib/rails/generators/rails/controller/controller_generator.rb b/railties/lib/rails/generators/rails/controller/controller_generator.rb
index 74aa0432a8..1482fc28d4 100644
--- a/railties/lib/rails/generators/rails/controller/controller_generator.rb
+++ b/railties/lib/rails/generators/rails/controller/controller_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class ControllerGenerator < NamedBase
+ class ControllerGenerator < NamedBase # :nodoc:
argument :actions, :type => :array, :default => [], :banner => "action action"
check_class_collision :suffix => "Controller"
diff --git a/railties/lib/rails/generators/rails/generator/generator_generator.rb b/railties/lib/rails/generators/rails/generator/generator_generator.rb
index 3e0a442bda..8a0fdbf2fb 100644
--- a/railties/lib/rails/generators/rails/generator/generator_generator.rb
+++ b/railties/lib/rails/generators/rails/generator/generator_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class GeneratorGenerator < NamedBase
+ class GeneratorGenerator < NamedBase # :nodoc:
check_class_collision :suffix => "Generator"
class_option :namespace, :type => :boolean, :default => true,
diff --git a/railties/lib/rails/generators/rails/helper/USAGE b/railties/lib/rails/generators/rails/helper/USAGE
index c0ddb0f606..30e323a858 100644
--- a/railties/lib/rails/generators/rails/helper/USAGE
+++ b/railties/lib/rails/generators/rails/helper/USAGE
@@ -13,5 +13,5 @@ Example:
Credit card helper.
Helper: app/helpers/credit_card_helper.rb
- Test: test/unit/helpers/credit_card_helper_test.rb
+ Test: test/helpers/credit_card_helper_test.rb
diff --git a/railties/lib/rails/generators/rails/helper/helper_generator.rb b/railties/lib/rails/generators/rails/helper/helper_generator.rb
index ad66388591..a1f83ac3e4 100644
--- a/railties/lib/rails/generators/rails/helper/helper_generator.rb
+++ b/railties/lib/rails/generators/rails/helper/helper_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class HelperGenerator < NamedBase
+ class HelperGenerator < NamedBase # :nodoc:
check_class_collision :suffix => "Helper"
def create_helper_files
diff --git a/railties/lib/rails/generators/rails/integration_test/integration_test_generator.rb b/railties/lib/rails/generators/rails/integration_test/integration_test_generator.rb
index 363a327fcb..9258ae1ee8 100644
--- a/railties/lib/rails/generators/rails/integration_test/integration_test_generator.rb
+++ b/railties/lib/rails/generators/rails/integration_test/integration_test_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class IntegrationTestGenerator < NamedBase
+ class IntegrationTestGenerator < NamedBase # :nodoc:
hook_for :integration_tool, :as => :integration
end
end
diff --git a/railties/lib/rails/generators/rails/migration/migration_generator.rb b/railties/lib/rails/generators/rails/migration/migration_generator.rb
index f87dce1502..2e1b6a27d8 100644
--- a/railties/lib/rails/generators/rails/migration/migration_generator.rb
+++ b/railties/lib/rails/generators/rails/migration/migration_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class MigrationGenerator < NamedBase #metagenerator
+ class MigrationGenerator < NamedBase # :nodoc:
argument :attributes, :type => :array, :default => [], :banner => "field[:type][:index] field[:type][:index]"
hook_for :orm, :required => true
end
diff --git a/railties/lib/rails/generators/rails/model/USAGE b/railties/lib/rails/generators/rails/model/USAGE
index c46c86076e..e29e19490e 100644
--- a/railties/lib/rails/generators/rails/model/USAGE
+++ b/railties/lib/rails/generators/rails/model/USAGE
@@ -74,7 +74,7 @@ Examples:
For ActiveRecord and TestUnit it creates:
Model: app/models/account.rb
- Test: test/unit/account_test.rb
+ Test: test/models/account_test.rb
Fixtures: test/fixtures/accounts.yml
Migration: db/migrate/XXX_add_accounts.rb
@@ -88,7 +88,7 @@ Examples:
Module: app/models/admin.rb
Model: app/models/admin/account.rb
- Test: test/unit/admin/account_test.rb
+ Test: test/models/admin/account_test.rb
Fixtures: test/fixtures/admin/accounts.yml
Migration: db/migrate/XXX_add_admin_accounts.rb
diff --git a/railties/lib/rails/generators/rails/model/model_generator.rb b/railties/lib/rails/generators/rails/model/model_generator.rb
index 9bb29b784e..af1617fadf 100644
--- a/railties/lib/rails/generators/rails/model/model_generator.rb
+++ b/railties/lib/rails/generators/rails/model/model_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class ModelGenerator < NamedBase #metagenerator
+ class ModelGenerator < NamedBase # :nodoc:
argument :attributes, :type => :array, :default => [], :banner => "field[:type][:index] field[:type][:index]"
hook_for :orm, :required => true
end
diff --git a/railties/lib/rails/generators/rails/observer/USAGE b/railties/lib/rails/generators/rails/observer/USAGE
index d8f32a6a48..177ff49e4a 100644
--- a/railties/lib/rails/generators/rails/observer/USAGE
+++ b/railties/lib/rails/generators/rails/observer/USAGE
@@ -9,4 +9,4 @@ Example:
For ActiveRecord and TestUnit it creates:
Observer: app/models/account_observer.rb
- TestUnit: test/unit/account_observer_test.rb
+ TestUnit: test/models/account_observer_test.rb
diff --git a/railties/lib/rails/generators/rails/observer/observer_generator.rb b/railties/lib/rails/generators/rails/observer/observer_generator.rb
index f5cedee91f..a11085eb0f 100644
--- a/railties/lib/rails/generators/rails/observer/observer_generator.rb
+++ b/railties/lib/rails/generators/rails/observer/observer_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class ObserverGenerator < NamedBase #metagenerator
+ class ObserverGenerator < NamedBase # :nodoc:
hook_for :orm, :required => true
end
end
diff --git a/railties/lib/rails/generators/rails/performance_test/performance_test_generator.rb b/railties/lib/rails/generators/rails/performance_test/performance_test_generator.rb
index d1c71ab8ed..83771c3dd7 100644
--- a/railties/lib/rails/generators/rails/performance_test/performance_test_generator.rb
+++ b/railties/lib/rails/generators/rails/performance_test/performance_test_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class PerformanceTestGenerator < NamedBase
+ class PerformanceTestGenerator < NamedBase # :nodoc:
hook_for :performance_tool, :as => :performance
end
end
diff --git a/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb b/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb
index c77b3450a3..42e0246f76 100644
--- a/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb
+++ b/railties/lib/rails/generators/rails/plugin_new/plugin_new_generator.rb
@@ -3,6 +3,13 @@ require "rails/generators/rails/app/app_generator"
require 'date'
module Rails
+ # The plugin builder allows you to override elements of the plugin
+ # generator without being forced to reverse the operations of the default
+ # generator.
+ #
+ # This allows you to override entire operations, like the creation of the
+ # Gemfile, README, or JavaScript files, without needing to know exactly
+ # what those operations do so you can create another template action.
class PluginBuilder
def rakefile
template "Rakefile"
@@ -146,7 +153,7 @@ task :default => :test
end
module Generators
- class PluginNewGenerator < AppBase
+ class PluginNewGenerator < AppBase # :nodoc:
add_shared_options_for "plugin"
alias_method :plugin_path, :app_path
diff --git a/railties/lib/rails/generators/rails/resource/resource_generator.rb b/railties/lib/rails/generators/rails/resource/resource_generator.rb
index 3a0586ee43..d3ba597dbd 100644
--- a/railties/lib/rails/generators/rails/resource/resource_generator.rb
+++ b/railties/lib/rails/generators/rails/resource/resource_generator.rb
@@ -4,7 +4,7 @@ require 'active_support/core_ext/object/blank'
module Rails
module Generators
- class ResourceGenerator < ModelGenerator #metagenerator
+ class ResourceGenerator < ModelGenerator # :nodoc:
include ResourceHelpers
hook_for :resource_controller, :required => true do |controller|
diff --git a/railties/lib/rails/generators/rails/resource_route/resource_route_generator.rb b/railties/lib/rails/generators/rails/resource_route/resource_route_generator.rb
index f33d56b564..121205b254 100644
--- a/railties/lib/rails/generators/rails/resource_route/resource_route_generator.rb
+++ b/railties/lib/rails/generators/rails/resource_route/resource_route_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class ResourceRouteGenerator < NamedBase
+ class ResourceRouteGenerator < NamedBase # :nodoc:
# Properly nests namespaces passed into a generator
#
diff --git a/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb b/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb
index 03a61a035e..c33c99e989 100644
--- a/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb
+++ b/railties/lib/rails/generators/rails/scaffold/scaffold_generator.rb
@@ -2,7 +2,7 @@ require 'rails/generators/rails/resource/resource_generator'
module Rails
module Generators
- class ScaffoldGenerator < ResourceGenerator #metagenerator
+ class ScaffoldGenerator < ResourceGenerator # :nodoc:
remove_hook_for :resource_controller
remove_class_option :actions
diff --git a/railties/lib/rails/generators/rails/scaffold_controller/USAGE b/railties/lib/rails/generators/rails/scaffold_controller/USAGE
index 5cd51b62d4..8ba4c5ccbc 100644
--- a/railties/lib/rails/generators/rails/scaffold_controller/USAGE
+++ b/railties/lib/rails/generators/rails/scaffold_controller/USAGE
@@ -13,7 +13,7 @@ Example:
`rails generate scaffold_controller CreditCard`
Credit card controller with URLs like /credit_card/debit.
- Controller: app/controllers/credit_cards_controller.rb
- Functional Test: test/functional/credit_cards_controller_test.rb
- Views: app/views/credit_cards/index.html.erb [...]
- Helper: app/helpers/credit_cards_helper.rb
+ Controller: app/controllers/credit_cards_controller.rb
+ Test: test/controllers/credit_cards_controller_test.rb
+ Views: app/views/credit_cards/index.html.erb [...]
+ Helper: app/helpers/credit_cards_helper.rb
diff --git a/railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb b/railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb
index f30ad6e20d..df069ca937 100644
--- a/railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb
+++ b/railties/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb
@@ -2,7 +2,7 @@ require 'rails/generators/resource_helpers'
module Rails
module Generators
- class ScaffoldControllerGenerator < NamedBase
+ class ScaffoldControllerGenerator < NamedBase # :nodoc:
include ResourceHelpers
check_class_collision :suffix => "Controller"
diff --git a/railties/lib/rails/generators/rails/task/task_generator.rb b/railties/lib/rails/generators/rails/task/task_generator.rb
index 8a62d9e8eb..cf3d1182ea 100644
--- a/railties/lib/rails/generators/rails/task/task_generator.rb
+++ b/railties/lib/rails/generators/rails/task/task_generator.rb
@@ -1,6 +1,6 @@
module Rails
module Generators
- class TaskGenerator < NamedBase
+ class TaskGenerator < NamedBase # :nodoc:
argument :actions, :type => :array, :default => [], :banner => "action action"
def create_task_files
diff --git a/railties/lib/rails/generators/resource_helpers.rb b/railties/lib/rails/generators/resource_helpers.rb
index 48833869e5..3df25219ab 100644
--- a/railties/lib/rails/generators/resource_helpers.rb
+++ b/railties/lib/rails/generators/resource_helpers.rb
@@ -4,8 +4,7 @@ module Rails
module Generators
# Deal with controller names on scaffold and add some helpers to deal with
# ActiveModel.
- #
- module ResourceHelpers
+ module ResourceHelpers # :nodoc:
mattr_accessor :skip_warn
def self.included(base) #:nodoc:
@@ -13,7 +12,6 @@ module Rails
end
# Set controller variables on initialization.
- #
def initialize(*args) #:nodoc:
super
diff --git a/railties/lib/rails/generators/test_case.rb b/railties/lib/rails/generators/test_case.rb
index 2ff340755a..30ae805348 100644
--- a/railties/lib/rails/generators/test_case.rb
+++ b/railties/lib/rails/generators/test_case.rb
@@ -26,7 +26,6 @@ module Rails
# destination File.expand_path("../tmp", File.dirname(__FILE__))
# setup :prepare_destination
# end
- #
class TestCase < ActiveSupport::TestCase
include FileUtils
@@ -37,13 +36,13 @@ module Rails
self.current_path = File.expand_path(Dir.pwd)
self.default_arguments = []
- def setup
+ def setup # :nodoc:
destination_root_is_set?
ensure_current_path
super
end
- def teardown
+ def teardown # :nodoc:
ensure_current_path
super
end
@@ -51,7 +50,6 @@ module Rails
# Sets which generator should be tested:
#
# tests AppGenerator
- #
def self.tests(klass)
self.generator_class = klass
end
@@ -60,7 +58,6 @@ module Rails
# invoking it.
#
# arguments %w(app_name --skip-active-record)
- #
def self.arguments(array)
self.default_arguments = array
end
@@ -68,7 +65,6 @@ module Rails
# Sets the destination of generator files:
#
# destination File.expand_path("../tmp", File.dirname(__FILE__))
- #
def self.destination(path)
self.destination_root = path
end
@@ -91,7 +87,6 @@ module Rails
# assert_match(/Product\.all/, index)
# end
# end
- #
def assert_file(relative, *contents)
absolute = File.expand_path(relative, destination_root)
assert File.exists?(absolute), "Expected file #{relative.inspect} to exist, but does not"
@@ -114,7 +109,6 @@ module Rails
# path relative to the configured destination:
#
# assert_no_file "config/random.rb"
- #
def assert_no_file(relative)
absolute = File.expand_path(relative, destination_root)
assert !File.exists?(absolute), "Expected file #{relative.inspect} to not exist, but does"
@@ -132,7 +126,6 @@ module Rails
# assert_file "db/migrate/003_create_products.rb"
#
# Consequently, assert_migration accepts the same arguments has assert_file.
- #
def assert_migration(relative, *contents, &block)
file_name = migration_file_name(relative)
assert file_name, "Expected migration #{relative} to exist, but was not found"
@@ -143,7 +136,6 @@ module Rails
# path relative to the configured destination:
#
# assert_no_migration "db/migrate/create_products.rb"
- #
def assert_no_migration(relative)
file_name = migration_file_name(relative)
assert_nil file_name, "Expected migration #{relative} to not exist, but found #{file_name}"
@@ -158,7 +150,6 @@ module Rails
# assert_match(/create_table/, up)
# end
# end
- #
def assert_class_method(method, content, &block)
assert_instance_method "self.#{method}", content, &block
end
@@ -171,7 +162,6 @@ module Rails
# assert_match(/Product\.all/, index)
# end
# end
- #
def assert_instance_method(method, content)
assert content =~ /def #{method}(\(.+\))?(.*?)\n end/m, "Expected to have method #{method}"
yield $2.strip if block_given?
@@ -182,7 +172,6 @@ module Rails
# properly:
#
# assert_field_type :date, :date_select
- #
def assert_field_type(attribute_type, field_type)
assert_equal(field_type, create_generated_attribute(attribute_type).field_type)
end
@@ -190,7 +179,6 @@ module Rails
# Asserts the given attribute type gets a proper default value:
#
# assert_field_default_value :string, "MyString"
- #
def assert_field_default_value(attribute_type, value)
assert_equal(value, create_generated_attribute(attribute_type).default)
end
@@ -224,27 +212,26 @@ module Rails
# attribute type and, optionally, the attribute name:
#
# create_generated_attribute(:string, 'name')
- #
def create_generated_attribute(attribute_type, name = 'test', index = nil)
Rails::Generators::GeneratedAttribute.parse([name, attribute_type, index].compact.join(':'))
end
protected
- def destination_root_is_set? #:nodoc:
+ def destination_root_is_set? # :nodoc:
raise "You need to configure your Rails::Generators::TestCase destination root." unless destination_root
end
- def ensure_current_path #:nodoc:
+ def ensure_current_path # :nodoc:
cd current_path
end
- def prepare_destination
+ def prepare_destination # :nodoc:
rm_rf(destination_root)
mkdir_p(destination_root)
end
- def migration_file_name(relative) #:nodoc:
+ def migration_file_name(relative) # :nodoc:
absolute = File.expand_path(relative, destination_root)
dirname, file_name = File.dirname(absolute), File.basename(absolute).sub(/\.rb$/, '')
Dir.glob("#{dirname}/[0-9]*_*.rb").grep(/\d+_#{file_name}.rb$/).first
diff --git a/railties/lib/rails/generators/test_unit.rb b/railties/lib/rails/generators/test_unit.rb
index 62b9afaa2c..fe45c9e15d 100644
--- a/railties/lib/rails/generators/test_unit.rb
+++ b/railties/lib/rails/generators/test_unit.rb
@@ -1,8 +1,8 @@
require 'rails/generators/named_base'
-module TestUnit
- module Generators
- class Base < Rails::Generators::NamedBase #:nodoc:
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class Base < Rails::Generators::NamedBase # :nodoc:
end
end
end
diff --git a/railties/lib/rails/generators/test_unit/controller/controller_generator.rb b/railties/lib/rails/generators/test_unit/controller/controller_generator.rb
index 20f3bd8965..c53930f994 100644
--- a/railties/lib/rails/generators/test_unit/controller/controller_generator.rb
+++ b/railties/lib/rails/generators/test_unit/controller/controller_generator.rb
@@ -1,14 +1,14 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class ControllerGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class ControllerGenerator < Base # :nodoc:
argument :actions, :type => :array, :default => [], :banner => "action action"
check_class_collision :suffix => "ControllerTest"
def create_test_files
template 'functional_test.rb',
- File.join('test/functional', class_path, "#{file_name}_controller_test.rb")
+ File.join('test/controllers', class_path, "#{file_name}_controller_test.rb")
end
end
end
diff --git a/railties/lib/rails/generators/test_unit/helper/helper_generator.rb b/railties/lib/rails/generators/test_unit/helper/helper_generator.rb
index 4ea80bf7be..bcd370098e 100644
--- a/railties/lib/rails/generators/test_unit/helper/helper_generator.rb
+++ b/railties/lib/rails/generators/test_unit/helper/helper_generator.rb
@@ -1,12 +1,12 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class HelperGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class HelperGenerator < Base # :nodoc:
check_class_collision :suffix => "HelperTest"
def create_helper_files
- template 'helper_test.rb', File.join('test/unit/helpers', class_path, "#{file_name}_helper_test.rb")
+ template 'helper_test.rb', File.join('test/helpers', class_path, "#{file_name}_helper_test.rb")
end
end
end
diff --git a/railties/lib/rails/generators/test_unit/integration/integration_generator.rb b/railties/lib/rails/generators/test_unit/integration/integration_generator.rb
index 32d0fac029..427d128275 100644
--- a/railties/lib/rails/generators/test_unit/integration/integration_generator.rb
+++ b/railties/lib/rails/generators/test_unit/integration/integration_generator.rb
@@ -1,8 +1,8 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class IntegrationGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class IntegrationGenerator < Base # :nodoc:
check_class_collision :suffix => "Test"
def create_test_files
diff --git a/railties/lib/rails/generators/test_unit/mailer/mailer_generator.rb b/railties/lib/rails/generators/test_unit/mailer/mailer_generator.rb
index 1a49286d41..570a733227 100644
--- a/railties/lib/rails/generators/test_unit/mailer/mailer_generator.rb
+++ b/railties/lib/rails/generators/test_unit/mailer/mailer_generator.rb
@@ -1,13 +1,13 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class MailerGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class MailerGenerator < Base # :nodoc:
argument :actions, :type => :array, :default => [], :banner => "method method"
check_class_collision :suffix => "Test"
def create_test_files
- template "functional_test.rb", File.join('test/functional', class_path, "#{file_name}_test.rb")
+ template "functional_test.rb", File.join('test/mailers', class_path, "#{file_name}_test.rb")
end
end
end
diff --git a/railties/lib/rails/generators/test_unit/model/model_generator.rb b/railties/lib/rails/generators/test_unit/model/model_generator.rb
index c1dd535dd3..9b73f3561f 100644
--- a/railties/lib/rails/generators/test_unit/model/model_generator.rb
+++ b/railties/lib/rails/generators/test_unit/model/model_generator.rb
@@ -1,15 +1,15 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class ModelGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class ModelGenerator < Base # :nodoc:
argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
class_option :fixture, :type => :boolean
check_class_collision :suffix => "Test"
def create_test_file
- template 'unit_test.rb', File.join('test/unit', class_path, "#{file_name}_test.rb")
+ template 'unit_test.rb', File.join('test/models', class_path, "#{file_name}_test.rb")
end
hook_for :fixture_replacement
diff --git a/railties/lib/rails/generators/test_unit/observer/observer_generator.rb b/railties/lib/rails/generators/test_unit/observer/observer_generator.rb
index 6cc1158c21..8bfb749743 100644
--- a/railties/lib/rails/generators/test_unit/observer/observer_generator.rb
+++ b/railties/lib/rails/generators/test_unit/observer/observer_generator.rb
@@ -1,12 +1,12 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class ObserverGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class ObserverGenerator < Base # :nodoc:
check_class_collision :suffix => "ObserverTest"
def create_test_files
- template 'unit_test.rb', File.join('test/unit', class_path, "#{file_name}_observer_test.rb")
+ template 'unit_test.rb', File.join('test/models', class_path, "#{file_name}_observer_test.rb")
end
end
end
diff --git a/railties/lib/rails/generators/test_unit/performance/performance_generator.rb b/railties/lib/rails/generators/test_unit/performance/performance_generator.rb
index 99edda5461..9a80d1ea54 100644
--- a/railties/lib/rails/generators/test_unit/performance/performance_generator.rb
+++ b/railties/lib/rails/generators/test_unit/performance/performance_generator.rb
@@ -1,8 +1,8 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class PerformanceGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class PerformanceGenerator < Base # :nodoc:
check_class_collision :suffix => "Test"
def create_test_files
diff --git a/railties/lib/rails/generators/test_unit/plugin/plugin_generator.rb b/railties/lib/rails/generators/test_unit/plugin/plugin_generator.rb
index 4d65cd7d89..41e8873783 100644
--- a/railties/lib/rails/generators/test_unit/plugin/plugin_generator.rb
+++ b/railties/lib/rails/generators/test_unit/plugin/plugin_generator.rb
@@ -1,8 +1,8 @@
require 'rails/generators/test_unit'
-module TestUnit
- module Generators
- class PluginGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class PluginGenerator < Base # :nodoc:
check_class_collision :suffix => "Test"
def create_test_files
diff --git a/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb b/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb
index ca7fee3b6e..0462c15224 100644
--- a/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb
+++ b/railties/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb
@@ -1,9 +1,9 @@
require 'rails/generators/test_unit'
require 'rails/generators/resource_helpers'
-module TestUnit
- module Generators
- class ScaffoldGenerator < Base
+module TestUnit # :nodoc:
+ module Generators # :nodoc:
+ class ScaffoldGenerator < Base # :nodoc:
include Rails::Generators::ResourceHelpers
check_class_collision :suffix => "ControllerTest"
@@ -12,7 +12,7 @@ module TestUnit
def create_test_files
template "functional_test.rb",
- File.join("test/functional", controller_class_path, "#{controller_file_name}_controller_test.rb")
+ File.join("test/controllers", controller_class_path, "#{controller_file_name}_controller_test.rb")
end
private
diff --git a/railties/lib/rails/source_annotation_extractor.rb b/railties/lib/rails/source_annotation_extractor.rb
index 31e34023c0..3474b02af4 100644
--- a/railties/lib/rails/source_annotation_extractor.rb
+++ b/railties/lib/rails/source_annotation_extractor.rb
@@ -32,9 +32,9 @@ class SourceAnnotationExtractor
end
# Prints all annotations with tag +tag+ under the root directories +app+, +config+, +lib+,
- # +script+, and +test+ (recursively). Only filenames with extension
- # +.builder+, +.rb+, +.erb+, +.haml+, +.slim+, +.css+, +.scss+, +.js+, and
- # +.coffee+ are taken into account. The +options+ hash is passed to each
+ # +script+, and +test+ (recursively). Filenames with extension
+ # +.builder+, +.rb+, +.erb+, +.haml+, +.slim+, +.css+, +.scss+, +.js+,
+ # +.coffee+, and +.rake+ are taken into account. The +options+ hash is passed to each
# annotation's +to_s+.
#
# This class method is the single entry point for the rake tasks.
@@ -56,9 +56,9 @@ class SourceAnnotationExtractor
end
# Returns a hash that maps filenames under +dir+ (recursively) to arrays
- # with their annotations. Only files with annotations are included, and only
- # those with extension +.builder+, +.rb+, +.erb+, +.haml+, +.slim+, +.css+,
- # +.scss+, +.js+, and +.coffee+
+ # with their annotations. Only files with annotations are included. Files
+ # with extension +.builder+, +.rb+, +.erb+, +.haml+, +.slim+, +.css+,
+ # +.scss+, +.js+, +.coffee+, and +.rake+
# are taken into account.
def find_in(dir)
results = {}
@@ -68,7 +68,7 @@ class SourceAnnotationExtractor
if File.directory?(item)
results.update(find_in(item))
- elsif item =~ /\.(builder|rb|coffee)$/
+ elsif item =~ /\.(builder|rb|coffee|rake)$/
results.update(extract_annotations_from(item, /#\s*(#{tag}):?\s*(.*)$/))
elsif item =~ /\.(css|scss|js)$/
results.update(extract_annotations_from(item, /\/\/\s*(#{tag}):?\s*(.*)$/))
diff --git a/railties/lib/rails/tasks/statistics.rake b/railties/lib/rails/tasks/statistics.rake
index 67a6d2d2ac..c1674c72ad 100644
--- a/railties/lib/rails/tasks/statistics.rake
+++ b/railties/lib/rails/tasks/statistics.rake
@@ -6,9 +6,13 @@ STATS_DIRECTORIES = [
%w(Javascripts app/assets/javascripts),
%w(Libraries lib/),
%w(APIs app/apis),
+ %w(Controller\ tests test/controllers),
+ %w(Helper\ tests test/helpers),
+ %w(Model\ tests test/models),
+ %w(Mailer\ tests test/mailers),
%w(Integration\ tests test/integration),
- %w(Functional\ tests test/functional),
- %w(Unit\ tests test/unit)
+ %w(Functional\ tests\ (old) test/functional),
+ %w(Unit\ tests \ (old) test/unit)
].collect { |name, dir| [ name, "#{Rails.root}/#{dir}" ] }.select { |name, dir| File.directory?(dir) }
desc "Report code statistics (KLOCs, etc) from the application"
diff --git a/railties/lib/rails/test_unit/testing.rake b/railties/lib/rails/test_unit/testing.rake
index 0de4afe905..63cb955d44 100644
--- a/railties/lib/rails/test_unit/testing.rake
+++ b/railties/lib/rails/test_unit/testing.rake
@@ -15,11 +15,11 @@ def recent_tests(source_pattern, test_path, touched_since = 10.minutes.ago)
# Support subdirs in app/models and app/controllers
modified_test_path = source_dir.length > 2 ? "#{test_path}/" << source_dir[1..source_dir.length].join('/') : test_path
- # For modified files in app/ run the tests for it. ex. /test/functional/account_controller.rb
+ # For modified files in app/ run the tests for it. ex. /test/controllers/account_controller.rb
test = "#{modified_test_path}/#{source_file}_test.rb"
tests.push test if File.exist?(test)
- # For modified files in app, run tests in subdirs too. ex. /test/functional/account/*_test.rb
+ # For modified files in app, run tests in subdirs too. ex. /test/controllers/account/*_test.rb
test = "#{modified_test_path}/#{File.basename(path, '.rb').sub("_controller","")}"
FileList["#{test}/*_test.rb"].each { |f| tests.push f } if File.exist?(test)
@@ -74,7 +74,9 @@ namespace :test do
Rake::TestTask.new(:recent => "test:prepare") do |t|
since = TEST_CHANGES_SINCE
touched = FileList['test/**/*_test.rb'].select { |path| File.mtime(path) > since } +
+ recent_tests('app/models/**/*.rb', 'test/models', since) +
recent_tests('app/models/**/*.rb', 'test/unit', since) +
+ recent_tests('app/controllers/**/*.rb', 'test/controllers', since) +
recent_tests('app/controllers/**/*.rb', 'test/functional', since)
t.libs << 'test'
@@ -95,8 +97,10 @@ namespace :test do
models = changed_since_checkin.select { |path| path =~ /app[\\\/]models[\\\/].*\.rb$/ }
controllers = changed_since_checkin.select { |path| path =~ /app[\\\/]controllers[\\\/].*\.rb$/ }
- unit_tests = models.map { |model| "test/unit/#{File.basename(model, '.rb')}_test.rb" }
- functional_tests = controllers.map { |controller| "test/functional/#{File.basename(controller, '.rb')}_test.rb" }
+ unit_tests = models.map { |model| "test/models/#{File.basename(model, '.rb')}_test.rb" } +
+ models.map { |model| "test/unit/#{File.basename(model, '.rb')}_test.rb" } +
+ functional_tests = controllers.map { |controller| "test/controllers/#{File.basename(controller, '.rb')}_test.rb" } +
+ controllers.map { |controller| "test/functional/#{File.basename(controller, '.rb')}_test.rb" }
(unit_tests + functional_tests).uniq.select { |file| File.exist?(file) }
end
@@ -108,14 +112,34 @@ namespace :test do
t.libs << "test"
end
+ Rails::SubTestTask.new(:models => "test:prepare") do |t|
+ t.libs << "test"
+ t.pattern = 'test/models/**/*_test.rb'
+ end
+
+ Rails::SubTestTask.new(:helpers => "test:prepare") do |t|
+ t.libs << "test"
+ t.pattern = 'test/helpers/**/*_test.rb'
+ end
+
Rails::SubTestTask.new(:units => "test:prepare") do |t|
t.libs << "test"
- t.pattern = 'test/unit/**/*_test.rb'
+ t.pattern = 'test/{models,helpers,unit}/**/*_test.rb'
+ end
+
+ Rails::SubTestTask.new(:controllers => "test:prepare") do |t|
+ t.libs << "test"
+ t.pattern = 'test/controllers/**/*_test.rb'
+ end
+
+ Rails::SubTestTask.new(:mailers => "test:prepare") do |t|
+ t.libs << "test"
+ t.pattern = 'test/mailers/**/*_test.rb'
end
Rails::SubTestTask.new(:functionals => "test:prepare") do |t|
t.libs << "test"
- t.pattern = 'test/functional/**/*_test.rb'
+ t.pattern = 'test/{controllers,mailers,functional}/**/*_test.rb'
end
Rails::SubTestTask.new(:integration => "test:prepare") do |t|