diff --git a/spec/guard/rails-assets_spec.rb b/spec/guard/rails-assets_spec.rb index b69393f..cd0a843 100644 --- a/spec/guard/rails-assets_spec.rb +++ b/spec/guard/rails-assets_spec.rb @@ -10,15 +10,15 @@ describe Guard::RailsAssets do end describe '#start' do - it_behaves_like 'guard command', :command => :start, :run => true + it_behaves_like 'guard command', :command => :start, :run => true end describe '#reload' do - it_behaves_like 'guard command', :command => :reload, :run => false + it_behaves_like 'guard command', :command => :reload, :run => false end describe '#run_all' do - it_behaves_like 'guard command', :command => :run_all, :run => true + it_behaves_like 'guard command', :command => :run_all, :run => true end describe '#run_on_change' do @@ -26,8 +26,22 @@ describe Guard::RailsAssets do end - describe 'asset compilation' do - it 'should notify on success' - it 'should notify on failure' + describe 'asset compilation using CLI' do + def stub_system_with result + Kernel.stub(:system).with("rm -rf public/assets && bundle exec rake assets:precompile").and_return result + end + + it 'should notify on success' do + stub_system_with true + Kernel.should_receive(:~).with('tree public/assets').and_return "a\nb\n1 directory, 2 files" + Guard::Notifier.should_receive(:notify).with('1 directory, 2 files', :title => 'Assets compiled') + subject.compile_assets + end + it 'should notify on failure' do + stub_system_with false + Kernel.should_not_receive(:~) + Guard::Notifier.should_receive(:notify).with('see the details in the terminal', :title => "Can't compile assets", :image => :failed) + subject.compile_assets + end end end