From 5252f5c1c96001795d3e723ad8e48117e34c045b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim?= Date: Fri, 15 Jan 2010 13:39:56 +0100 Subject: [PATCH] Bundle automatically if --dev or --edge is given as option. --- railties/lib/rails/generators/rails/app/app_generator.rb | 6 ++++-- railties/test/generators/app_generator_test.rb | 8 +++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/railties/lib/rails/generators/rails/app/app_generator.rb b/railties/lib/rails/generators/rails/app/app_generator.rb index ba3eb67fe0..d58d245168 100644 --- a/railties/lib/rails/generators/rails/app/app_generator.rb +++ b/railties/lib/rails/generators/rails/app/app_generator.rb @@ -168,12 +168,14 @@ def apply_rails_template raise Error, "The template [#{rails_template}] could not be loaded. Error: #{e}" end + def bundle_if_dev_or_edge + run "gem bundle" if dev_or_edge? + end + protected attr_accessor :rails_template def set_default_accessors! - app_name # Cache app name - self.rails_template = case options[:template] when /^http:\/\// options[:template] diff --git a/railties/test/generators/app_generator_test.rb b/railties/test/generators/app_generator_test.rb index 3e3cd90bed..62ea07f14e 100644 --- a/railties/test/generators/app_generator_test.rb +++ b/railties/test/generators/app_generator_test.rb @@ -144,7 +144,7 @@ def test_template_is_executed_when_supplied template = %{ say "It works!" } template.instance_eval "def read; self; end" # Make the string respond to read - generator([destination_root], :template => path, :database => "sqlite3").expects(:open).with(path).returns(template) + generator([destination_root], :template => path).expects(:open).with(path).returns(template) assert_match /It works!/, silence(:stdout){ generator.invoke } end @@ -168,14 +168,16 @@ def test_file_is_added_for_backwards_compatibility end def test_dev_option - run_generator [destination_root, "--dev"] + generator([destination_root], :dev => true).expects(:run).with("gem bundle") + silence(:stdout){ generator.invoke } rails_path = File.expand_path('../../..', Rails.root) dev_gem = %(directory #{rails_path.inspect}, :glob => "{*/,}*.gemspec") assert_file 'Gemfile', /^#{Regexp.escape(dev_gem)}$/ end def test_edge_option - run_generator [destination_root, "--edge"] + generator([destination_root], :edge => true).expects(:run).with("gem bundle") + silence(:stdout){ generator.invoke } edge_gem = %(gem "rails", :git => "git://github.com/rails/rails.git") assert_file 'Gemfile', /^#{Regexp.escape(edge_gem)}$/ end -- GitLab