spec/capistrano-spec_spec.rb in capistrano-spec-0.5.0 vs spec/capistrano-spec_spec.rb in capistrano-spec-0.5.1

- old
+ new

@@ -51,53 +51,96 @@ expect{ should have_gotten('/tmp/blegga').to('blegga')}.to raise_error(RSpec::Expectations::ExpectationNotMetError, /expected configuration to get .*\s* to .*\s* but did not/) end end describe 'callback' do + context 'before callbacks' do + it_should_behave_like 'correct before callback' do + let(:task_name) { 'fake:before_this_execute_thing' } + end - ['fake:before_this_execute_thing', "fake:before_this_also_execute_thing"].each do |task| - it "will not raise error when `before` callback has occured for #{task}" do - fake_recipe.should callback('fake:thing').before(task) + it_should_behave_like 'correct before callback' do + let(:task_name) { 'fake:before_this_also_execute_thing' } end + + it_should_behave_like 'correct before callback' do + let(:task_name) { 'outside:undefined_task' } + end + + it_should_behave_like 'incorrect before callback' do + let(:task_name) { 'undefined_task' } + end + + it_should_behave_like 'incorrect before callback' do + let(:task_name) { 'fake:before_this_dont_execute_thing' } + end end - ['fake:after_this_execute_thing', "fake:after_this_also_execute_thing"].each do |task| - it "will not raise error when `after` callback has occured for #{task}" do - fake_recipe.should callback('fake:thing').after(task) + context 'after callbacks' do + it_should_behave_like 'correct after callback' do + let(:task_name) { 'fake:after_this_execute_thing' } end + + it_should_behave_like 'correct after callback' do + let(:task_name) { 'fake:after_this_also_execute_thing' } + end + + it_should_behave_like 'correct after callback' do + let(:task_name) { 'outside:undefined_task' } + end + + it_should_behave_like 'incorrect after callback' do + let(:task_name) { 'undefined_task' } + end + + it_should_behave_like 'incorrect after callback' do + let(:task_name) { 'fake:after_this_dont_execute_thing' } + end end end describe 'have_put' do context 'when a path is given' do it "will not raise error when put is in recipe" do fake_recipe.find_and_execute_task('fake:thing') expect do should have_put('fake content').to('/tmp/put') - end.to_not raise_error(RSpec::Expectations::ExpectationNotMetError, /expected configuration to put .*\s* to .*\s*, but did not/) + end.to_not raise_error( + RSpec::Expectations::ExpectationNotMetError, + /expected configuration to put .*\s* to .*\s*, but did not/ + ) end it "will raise error when put is not in recipe" do fake_recipe.find_and_execute_task('fake:thing') expect do should have_put('real content').to('/tmp/wherever') - end.to raise_error(RSpec::Expectations::ExpectationNotMetError, /expected configuration to put .*\s* to .*\s*, but did not/) + end.to raise_error( + RSpec::Expectations::ExpectationNotMetError, + /expected configuration to put .*\s* to .*\s*, but did not/ + ) end end context 'when a path is not given' do it "will not raise error when put is in recipe" do fake_recipe.find_and_execute_task('fake:thing') expect do should have_put('fake content') - end.to_not raise_error(RSpec::Expectations::ExpectationNotMetError, /expected configuration to put .*\s*, but did not/) + end.to_not raise_error( + RSpec::Expectations::ExpectationNotMetError, + /expected configuration to put .*\s*, but did not/ + ) end it "will raise error when put is not in recipe" do fake_recipe.find_and_execute_task('fake:thing') expect do should have_put('real content') - end.to raise_error(RSpec::Expectations::ExpectationNotMetError, /expected configuration to put .*\s*, but did not/) + end.to raise_error( + RSpec::Expectations::ExpectationNotMetError, + /expected configuration to put .*\s*, but did not/ + ) end end end end