55 lines
1.5 KiB
Ruby
55 lines
1.5 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe Guard::JasmineHeadlessWebkit::Runner do
|
|
describe '.run' do
|
|
it 'should pass along options' do
|
|
Jasmine::Headless::Runner.expects(:run).with(has_key(:full_run))
|
|
|
|
Guard::JasmineHeadlessWebkit::Runner.run([], :full_run => false)
|
|
end
|
|
end
|
|
|
|
describe '.notify' do
|
|
include FakeFS::SpecHelpers
|
|
|
|
let(:file) { 'temp.txt' }
|
|
|
|
before do
|
|
File.open(file, 'w') { |fh| fh.print data }
|
|
end
|
|
|
|
context 'system run not interrupted' do
|
|
let(:data) { 'TOTAL||1||0||5||F' }
|
|
|
|
it 'should notify with the right information' do
|
|
Guard::Notifier.expects(:notify).with("1 test, 0 failures, 5.0 secs.", { :title => 'Jasmine results', :image => :success })
|
|
|
|
Guard::JasmineHeadlessWebkit::Runner.notify(file).should == []
|
|
end
|
|
end
|
|
|
|
context 'with failures' do
|
|
let(:data) { <<-REPORT }
|
|
FAIL||Test||Two||file.js:50
|
|
TOTAL||1||1||5||F
|
|
REPORT
|
|
|
|
it 'should notify with the right information' do
|
|
Guard::Notifier.expects(:notify).with("1 test, 1 failures, 5.0 secs.", { :title => 'Jasmine results', :image => :failed })
|
|
|
|
Guard::JasmineHeadlessWebkit::Runner.notify(file).should == [ 'file.js' ]
|
|
end
|
|
end
|
|
|
|
context 'system run interrupted' do
|
|
let(:data) { '' }
|
|
|
|
it 'should notify failure' do
|
|
Guard::Notifier.expects(:notify).with("Spec runner interrupted!", { :title => 'Jasmine results', :image => :failed })
|
|
|
|
Guard::JasmineHeadlessWebkit::Runner.notify(file).should be_false
|
|
end
|
|
end
|
|
end
|
|
end
|