aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/generators
diff options
context:
space:
mode:
authoryuuji.yaginuma <yuuji.yaginuma@gmail.com>2017-01-16 22:27:51 +0900
committeryuuji.yaginuma <yuuji.yaginuma@gmail.com>2017-03-20 15:37:45 +0900
commita42351acbc5406ab0825befe641144b4cb1ee6bf (patch)
tree4f86ccc44dc87f8e84c00de1eae7823648eaf96b /railties/test/generators
parent1835d87fb848fd9f13e43bf16abd41be231b1666 (diff)
downloadrails-a42351acbc5406ab0825befe641144b4cb1ee6bf.tar.gz
rails-a42351acbc5406ab0825befe641144b4cb1ee6bf.tar.bz2
rails-a42351acbc5406ab0825befe641144b4cb1ee6bf.zip
Add `app:update` task to engines
Occasionally we update the file generated by engine. Therefore, I think that there is a task for updating as well as application in the engine, it is convenient for updating.
Diffstat (limited to 'railties/test/generators')
-rw-r--r--railties/test/generators/plugin_generator_test.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/railties/test/generators/plugin_generator_test.rb b/railties/test/generators/plugin_generator_test.rb
index 8ec096e5c6..afb37b6a99 100644
--- a/railties/test/generators/plugin_generator_test.rb
+++ b/railties/test/generators/plugin_generator_test.rb
@@ -1,6 +1,7 @@
require "generators/generators_test_helper"
require "rails/generators/rails/plugin/plugin_generator"
require "generators/shared_generator_tests"
+require "rails/engine/updater"
DEFAULT_PLUGIN_FILES = %w(
.gitignore
@@ -731,6 +732,21 @@ class PluginGeneratorTest < Rails::Generators::TestCase
end
end
+ def test_app_update_generates_bin_file
+ run_generator [destination_root, "--mountable"]
+
+ Object.const_set("ENGINE_ROOT", destination_root)
+ FileUtils.rm("#{destination_root}/bin/rails")
+
+ quietly { Rails::Engine::Updater.run(:create_bin_files) }
+
+ assert_file "#{destination_root}/bin/rails" do |content|
+ assert_match(%r|APP_PATH = File\.expand_path\('\.\./\.\./test/dummy/config/application', __FILE__\)|, content)
+ end
+ ensure
+ Object.send(:remove_const, "ENGINE_ROOT")
+ end
+
private
def action(*args, &block)