We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 54c52f0 commit bee2f74Copy full SHA for bee2f74
lib/concurrent/edge/future.rb
@@ -1180,6 +1180,7 @@ def process_on_done(future)
1180
value = internal_state.value
1181
case value
1182
when Future
1183
+ value.touch if self.future.touched
1184
@BlockedBy.push value
1185
value.add_callback :callback_notify_blocked, self
1186
@Countdown.value
spec/concurrent/edge/future_spec.rb
@@ -378,6 +378,10 @@
378
f = Concurrent.future { Concurrent.completed_event }.flat
379
expect(f.reason).to be_an_instance_of TypeError
380
end
381
+
382
+ it 'propagates requests for values to delayed futures' do
383
+ expect(Concurrent.future { Concurrent.delay { 1 } }.flat.value!(0.1)).to eq 1
384
+ end
385
386
387
it 'completes future when Exception raised' do
0 commit comments