aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2010-01-15 13:39:56 +0100
committerJosé Valim <jose.valim@gmail.com>2010-01-15 13:39:56 +0100
commit5252f5c1c96001795d3e723ad8e48117e34c045b (patch)
tree19e882cc8a09863e56a36d767d2b5108f84db3fe
parentc905fce35f51b00933ab06725fc3548036caa07c (diff)
downloadrails-5252f5c1c96001795d3e723ad8e48117e34c045b.tar.gz
rails-5252f5c1c96001795d3e723ad8e48117e34c045b.tar.bz2
rails-5252f5c1c96001795d3e723ad8e48117e34c045b.zip
Bundle automatically if --dev or --edge is given as option.
-rw-r--r--railties/lib/rails/generators/rails/app/app_generator.rb6
-rw-r--r--railties/test/generators/app_generator_test.rb8
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 @@ module Rails::Generators
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 @@ class AppGeneratorTest < GeneratorsTestCase
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 @@ class AppGeneratorTest < GeneratorsTestCase
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