diff options
Diffstat (limited to 'spec/lib/gitlab/checks/timed_logger_spec.rb')
-rw-r--r-- | spec/lib/gitlab/checks/timed_logger_spec.rb | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/spec/lib/gitlab/checks/timed_logger_spec.rb b/spec/lib/gitlab/checks/timed_logger_spec.rb index 6c488212eca..261fdd6c002 100644 --- a/spec/lib/gitlab/checks/timed_logger_spec.rb +++ b/spec/lib/gitlab/checks/timed_logger_spec.rb @@ -17,38 +17,44 @@ RSpec.describe Gitlab::Checks::TimedLogger do logger.append_message("Checking ref: #{ref}") end + around do |example| + freeze_time do + example.run + end + end + describe '#log_timed' do it 'logs message' do - Timecop.freeze(start + 30.seconds) do - logger.log_timed(log_messages[:foo], start) { bar_check } - end + travel_to(start + 30.seconds) + + logger.log_timed(log_messages[:foo], start) { bar_check } expect(logger.full_message).to eq("Checking ref: bar\nFoo message... (30000.0ms)") end context 'when time limit was reached' do it 'cancels action' do - Timecop.freeze(start + 50.seconds) do - expect do - logger.log_timed(log_messages[:foo], start) do - bar_check - end - end.to raise_error(described_class::TimeoutError) - end + travel_to(start + 50.seconds) + + expect do + logger.log_timed(log_messages[:foo], start) do + bar_check + end + end.to raise_error(described_class::TimeoutError) expect(logger.full_message).to eq("Checking ref: bar\nFoo message... (cancelled)") end it 'cancels action with time elapsed if work was performed' do - Timecop.freeze(start + 30.seconds) do - expect do - logger.log_timed(log_messages[:foo], start) do - grpc_check - end - end.to raise_error(described_class::TimeoutError) - - expect(logger.full_message).to eq("Checking ref: bar\nFoo message... (cancelled after 30000.0ms)") - end + travel_to(start + 30.seconds) + + expect do + logger.log_timed(log_messages[:foo], start) do + grpc_check + end + end.to raise_error(described_class::TimeoutError) + + expect(logger.full_message).to eq("Checking ref: bar\nFoo message... (cancelled after 30000.0ms)") end end end |