@testset for
: avoid calling finish twice when it errors
#41715
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Here is a MWE:
The
finish
function is called twice, and for a toplevel testset, this meansthrowing an error. This manifests in the above example by printing twice
the result of the testset (with "Test Summary"), and by having
"Error: ... caused by: ..." with the same message.
I'm not sure whether this is a correct fix (and the two level of
try
blocks, together with the "first_iteration" trick are a bit complex for me), and I don't know how to write a test for it. But otherwise this can at least serve as a bug report.cc. @yuyichao who introduced some related changes in #18011.