Skip to content

Commit fef3d92

Browse files
committed
More test refactoring.
1 parent 3d6146e commit fef3d92

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

spec/concurrent/channel/blocking_ring_buffer_spec.rb

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,27 +65,32 @@ def fill_buffer
6565
fill_buffer
6666

6767
t = Thread.new { buffer.put 32 }
68-
69-
sleep(0.1)
68+
t.join(0.1)
7069

7170
expect(t.status).to eq 'sleep'
7271
end
7372

7473
it 'continues when an element is removed' do
7574
latch = CountDownLatch.new(1)
7675

77-
Thread.new { (capacity + 1).times { buffer.put 'hi' }; latch.count_down }
78-
Thread.new { sleep(0.1); buffer.take }
76+
t1 = Thread.new do
77+
(capacity + 3).times { buffer.put 'hi' }
78+
latch.count_down
79+
end
7980

80-
expect(latch.wait(0.2)).to be_truthy
81+
Thread.new do
82+
t1.join(0.1)
83+
3.times { buffer.take }
84+
end
85+
86+
expect(latch.wait(1)).to be_truthy
8187
end
8288
end
8389

8490
describe '#take' do
8591
it 'blocks when buffer is empty' do
8692
t = Thread.new { buffer.take }
87-
88-
sleep(0.1)
93+
t.join(0.1)
8994

9095
expect(t.status).to eq 'sleep'
9196
end

0 commit comments

Comments
 (0)