File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1818
1919 with "#async" do
2020 let ( :repeats ) { 40 }
21- let ( :delay ) { 0.01 }
2221
2322 it "should wait for all jobs to complete" do
2423 finished = 0
2524
2625 repeats . times . map do |i |
2726 barrier . async do |task |
28- sleep ( delay )
27+ task . yield
2928 finished += 1
30-
31- # This task is a child task but not part of the barrier.
32- task . async do
33- sleep ( delay *3 )
34- end
3529 end
3630 end
3731
3832 expect ( barrier ) . not . to be ( :empty? )
39- expect ( finished ) . to be < repeats
33+ expect ( finished ) . to be <= repeats
4034
41- duration = Async :: Clock . measure { barrier . wait }
35+ barrier . wait
4236
43- expect ( duration ) . to be_within ( repeats * Sus ::Fixtures ::Time ::QUANTUM ) . of ( delay )
4437 expect ( finished ) . to be == repeats
4538 expect ( barrier ) . to be ( :empty? )
4639 end
Original file line number Diff line number Diff line change @@ -87,17 +87,16 @@ def before
8787 with "#close" do
8888 it "signals tasks waiting to enqueue items when closed" do
8989 queue . enqueue ( :item1 )
90-
90+
9191 # This task will block as the queue is full:
9292 waiting_task = reactor . async do
93- queue . enqueue ( :item2 )
93+ expect do
94+ queue . enqueue ( :item2 )
95+ end . to raise_exception ( Async ::Queue ::ClosedError )
9496 end
95-
97+
9698 queue . close
97-
98- expect do
99- waiting_task . wait
100- end . to raise_exception ( Async ::Queue ::ClosedError )
99+ waiting_task . wait
101100 end
102101 end
103102end
Original file line number Diff line number Diff line change 3131
3232 expect ( task . status ) . to be == :running
3333
34- sequence << :yielding
3534 reactor . yield
3635 sequence << :finished
3736
4140 :waiting ,
4241 :running ,
4342 :signalled ,
44- :yielding ,
4543 :resumed ,
4644 :finished
4745 ]
Original file line number Diff line number Diff line change 101101 read_task = Async do
102102 expect do
103103 r . read ( 5 )
104- end . to raise_exception ( IOError , message : be =~ /stream closed/ )
104+ end . to raise_exception ( IOError , message : be =~ /closed/ )
105105 end
106106
107107 r . close
116116 read_task = Async do
117117 expect do
118118 r . read ( 5 )
119- end . to raise_exception ( IOError , message : be =~ /stream closed/ )
119+ end . to raise_exception ( IOError , message : be =~ /closed/ )
120120 end
121121
122122 close_task = Async do
135135 read_task = Async do
136136 expect do
137137 r . read ( 5 )
138- end . to raise_exception ( IOError , message : be =~ /stream closed/ )
138+ end . to raise_exception ( IOError , message : be =~ /closed/ )
139139 end
140140
141141 close_thread = Thread . new do
154154 read_task = Async do
155155 expect do
156156 r . read ( 5 )
157- end . to raise_exception ( IOError , message : be =~ /stream closed/ )
157+ end . to raise_exception ( IOError , message : be =~ /closed/ )
158158 end
159159
160160 close_thread = Thread . new do
You can’t perform that action at this time.
0 commit comments