
- Re-factor - Remove code for notifications - Remove addons - Remove travis-core gem. - Ignore logs directory only - Move core tests to spec/lib
39 lines
1.0 KiB
Ruby
39 lines
1.0 KiB
Ruby
describe Travis::Services::FindLog do
|
|
let!(:job) { Factory(:test) }
|
|
let(:log) { job.log }
|
|
let(:service) { described_class.new(stub('user'), params) }
|
|
|
|
attr_reader :params
|
|
|
|
describe 'run' do
|
|
it 'finds the log with the given id' do
|
|
@params = { id: log.id }
|
|
service.run.should == log
|
|
end
|
|
|
|
it 'finds the log with the given job_id' do
|
|
@params = { job_id: job.id }
|
|
service.run.should == log
|
|
end
|
|
|
|
it 'does not raise if the log could not be found' do
|
|
@params = { id: log.id + 1 }
|
|
lambda { service.run }.should_not raise_error
|
|
end
|
|
end
|
|
|
|
# TODO jobs can be requeued, so finished jobs are no more final
|
|
#
|
|
# describe 'final?' do
|
|
# it 'returns true if the job is finished' do
|
|
# log.job.update_attributes!(:state => :finished)
|
|
# service.final?.should be_truthy
|
|
# end
|
|
|
|
# it 'returns false if the job is not finished' do
|
|
# log.job.update_attributes!(:state => :started)
|
|
# service.final?.should be false
|
|
# end
|
|
# end
|
|
end
|