Closed danny-andrews closed 8 years ago
Parallel tasks are intentionally not awaited
. They're told that no one cares when they finish, so they don't bother telling anyone.
And I'm pretty sure the .log()
messages don't appear because they write into the current Fly instance. If it's been terminated, then there's nothing to write into.
That said, i can see how this is concerning when looking at console output. 💭
A surefire test would be to handle/write into files, since this takes the context of the test outside of the Fly instance. You'll find that files/file contents are created even after the "Finished" console message has been printed.
That makes perfect sense, and I'm actually happy with the yield [this.start('a'), this.start('b')];
workaround. :) Thanks!
👍 Cool, okay to close?
@brj do you think it's worth the extra effort & LOC to listen for the last parallel task to finish?
When I yield a task which yields the result of running two or more tasks in parallel, they don't seem to be run (or at least it seems fly isn't waiting for them to finish). Example:
If I write a task like the following:
I get the following printed in the console (notice no 'A' or 'B' being logged)
However, if I write a task like this:
I get the expected:
TLDR: