Skip to content

Commit ae57270

Browse files
committed
Add ! version of wait_while_with_timeout
That raises if the timeout is reached, instead of ignoring.
1 parent 1aad9f9 commit ae57270

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

test/integration/instrumentation_test.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ class InstrumentationTest < ActiveSupport::TestCase
1010
travel_to 2.days.from_now
1111
dispatcher = SolidQueue::Dispatcher.new(polling_interval: 0.1, batch_size: 10).tap(&:start)
1212

13-
wait_while_with_timeout(0.5.seconds) { SolidQueue::ScheduledExecution.any? }
13+
wait_while_with_timeout!(0.5.seconds) { SolidQueue::ScheduledExecution.any? }
1414
dispatcher.stop
1515
end
1616

@@ -25,7 +25,7 @@ class InstrumentationTest < ActiveSupport::TestCase
2525
events = subscribed(/release.*_claimed\.solid_queue/) do
2626
worker = SolidQueue::Worker.new.tap(&:start)
2727

28-
wait_while_with_timeout(3.seconds) { SolidQueue::ReadyExecution.any? }
28+
wait_while_with_timeout!(3.seconds) { SolidQueue::ReadyExecution.any? }
2929
process = SolidQueue::Process.last
3030

3131
worker.stop
@@ -59,7 +59,7 @@ class InstrumentationTest < ActiveSupport::TestCase
5959

6060
events = subscribed(/(register|deregister)_process\.solid_queue/) do
6161
worker = SolidQueue::Worker.new.tap(&:start)
62-
wait_while_with_timeout(3.seconds) { SolidQueue::ReadyExecution.any? }
62+
wait_while_with_timeout!(3.seconds) { SolidQueue::ReadyExecution.any? }
6363

6464
process = SolidQueue::Process.last
6565

test/test_helper.rb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,14 +85,18 @@ def wait_for_process_termination_with_timeout(pid, timeout: 10, exitstatus: 0)
8585
end
8686

8787
def wait_while_with_timeout(timeout, &block)
88+
wait_while_with_timeout!(timeout, &block)
89+
rescue Timeout::Error
90+
end
91+
92+
def wait_while_with_timeout!(timeout, &block)
8893
Timeout.timeout(timeout) do
8994
skip_active_record_query_cache do
9095
while block.call
9196
sleep 0.05
9297
end
9398
end
9499
end
95-
rescue Timeout::Error
96100
end
97101

98102
def signal_process(pid, signal, wait: nil)

0 commit comments

Comments
 (0)