diff options
Diffstat (limited to 'railties/test/generators')
-rw-r--r-- | railties/test/generators/plugin_new_generator_test.rb | 6 | ||||
-rw-r--r-- | railties/test/generators/shared_generator_tests.rb | 23 |
2 files changed, 19 insertions, 10 deletions
diff --git a/railties/test/generators/plugin_new_generator_test.rb b/railties/test/generators/plugin_new_generator_test.rb index f637a6a17e..673856c34d 100644 --- a/railties/test/generators/plugin_new_generator_test.rb +++ b/railties/test/generators/plugin_new_generator_test.rb @@ -119,17 +119,17 @@ class PluginNewGeneratorTest < Rails::Generators::TestCase assert_match(/It works from file!/, run_generator([destination_root, "-m", "lib/template.rb"])) end - def test_ensure_that_tests_works + def test_ensure_that_tests_work run_generator FileUtils.cd destination_root - `bundle install` + `bundle install` # use backticks to silence stdout assert_match(/1 tests, 1 assertions, 0 failures, 0 errors/, `bundle exec rake test`) end def test_ensure_that_tests_works_in_full_mode run_generator [destination_root, "--full", "--skip_active_record"] FileUtils.cd destination_root - `bundle install` + `bundle install` # use backticks to silence stdout assert_match(/1 tests, 1 assertions, 0 failures, 0 errors/, `bundle exec rake test`) end diff --git a/railties/test/generators/shared_generator_tests.rb b/railties/test/generators/shared_generator_tests.rb index 3fcf75883c..524aa2a05f 100644 --- a/railties/test/generators/shared_generator_tests.rb +++ b/railties/test/generators/shared_generator_tests.rb @@ -6,7 +6,6 @@ module SharedGeneratorTests Rails.application = TestApp::Application super Rails::Generators::AppGenerator.instance_variable_set('@desc', nil) - @bundle_command = File.basename(Thor::Util.ruby_command).sub(/ruby/, 'bundle') Kernel::silence_warnings do Thor::Base.shell.send(:attr_accessor, :always_force) @@ -24,7 +23,12 @@ module SharedGeneratorTests def test_skeleton_is_created run_generator - default_files.each{ |path| assert_file path } + default_files.each { |path| assert_file path } + end + + def test_generation_runs_bundle_check + generator([destination_root]).expects(:bundle_command).with('check').once + silence(:stdout) { generator.invoke_all } end def test_plugin_new_generate_pretend @@ -112,17 +116,23 @@ module SharedGeneratorTests end def test_dev_option - generator([destination_root], :dev => true).expects(:run).with("#{@bundle_command} install") - silence(:stdout){ generator.invoke_all } + generator([destination_root], :dev => true).expects(:bundle_command).with('install').once + silence(:stdout) { generator.invoke_all } rails_path = File.expand_path('../../..', Rails.root) assert_file 'Gemfile', /^gem\s+["']rails["'],\s+:path\s+=>\s+["']#{Regexp.escape(rails_path)}["']$/ end def test_edge_option - generator([destination_root], :edge => true).expects(:run).with("#{@bundle_command} install") - silence(:stdout){ generator.invoke_all } + generator([destination_root], :edge => true).expects(:bundle_command).with('install').once + silence(:stdout) { generator.invoke_all } assert_file 'Gemfile', %r{^gem\s+["']rails["'],\s+:git\s+=>\s+["']#{Regexp.escape("git://github.com/rails/rails.git")}["']$} end + + def test_skip_gemfile + generator([destination_root], :skip_gemfile => true).expects(:bundle_command).never + silence(:stdout) { generator.invoke_all } + assert_no_file 'Gemfile' + end end module SharedCustomGeneratorTests @@ -130,7 +140,6 @@ module SharedCustomGeneratorTests Rails.application = TestApp::Application super Rails::Generators::AppGenerator.instance_variable_set('@desc', nil) - @bundle_command = File.basename(Thor::Util.ruby_command).sub(/ruby/, 'bundle') end def teardown |