Allow running rails plugin new command inside rails application

This commit is contained in:
Piotr Sarnacki
2010-11-15 13:09:05 -06:00
committed by José Valim
parent 4da6d95604
commit b0665345f8
2 changed files with 17 additions and 6 deletions

View File

@@ -12,14 +12,19 @@ command = aliases[command] || command
case command
when 'generate', 'destroy', 'plugin'
require APP_PATH
Rails.application.require_environment!
if command == "plugin" && ARGV.first == "new"
require "rails/commands/plugin_new"
else
require APP_PATH
Rails.application.require_environment!
if defined?(ENGINE_PATH)
engine = Rails.application.railties.engines.find { |r| r.root.to_s == ENGINE_PATH }
Rails.application = engine
if defined?(ENGINE_PATH)
engine = Rails.application.railties.engines.find { |r| r.root.to_s == ENGINE_PATH }
Rails.application = engine
end
require "rails/commands/#{command}"
end
require "rails/commands/#{command}"
when 'benchmarker', 'profiler'
require APP_PATH

View File

@@ -25,6 +25,12 @@ module ApplicationTests
yield app_const.config
end
test "allow running plugin new generator inside Rails app directory" do
FileUtils.cd rails_root
`./script/rails plugin new vendor/plugins/bukkits`
assert File.exist?(File.join(rails_root, "vendor/plugins/bukkits/test/dummy/config/application.rb"))
end
test "generators default values" do
with_bare_config do |c|
assert_equal(true, c.generators.colorize_logging)