spec/blazing/recipes/bundler_recipe_spec.rb in blazing-0.0.7 vs spec/blazing/recipes/bundler_recipe_spec.rb in blazing-0.0.8
- old
+ new
@@ -1,6 +1,32 @@
require 'spec_helper'
require 'blazing/recipes/bundler_recipe'
describe Blazing::BundlerRecipe do
- pending 'write bundler recipe specs'
+
+ before :each do
+ @recipe_without_options = Blazing::BundlerRecipe.new('bundler')
+ @recipe_with_options = Blazing::BundlerRecipe.new('bundler', :flags => '--without=production')
+ @runner = double('runner', :run => nil)
+ @recipe_with_options.instance_variable_set('@runner', @runner)
+ @recipe_without_options.instance_variable_set('@runner', @runner)
+ end
+
+ describe '#run' do
+ it 'fails if there is no gemfile' do
+ File.stub!(:exists?).and_return(false)
+ @recipe_without_options.run.should be false
+ end
+
+ it 'runs bundle install with default options when no options given' do
+ File.stub!(:exists?).and_return(true)
+ @runner.should_receive(:run).with('bundle install --deployment')
+ @recipe_without_options.run
+ end
+
+ it 'runs bundle install with the options supplied' do
+ File.stub!(:exists?).and_return(true)
+ @runner.should_receive(:run).with('bundle install --without=production')
+ @recipe_with_options.run
+ end
+ end
end