Fix junit writing bug introduced in #16388 #16417
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.
#16388 introduced a bug where, with
--junit-format=global, the junit file would indicate an error (with no message) even if everything passed. That was because_generate_junit_contentswould check ifmessages_by_filewas empty or not to determine if there were failures, but with--junit-format=globalwe'd pass in a dictionary of the form{None: all_messages};all_messageswould be empty, but the resulting dictionary wouldn't be.The fix is to pass in an empty dictionary if there are no messages.
I've tested manually with
--junit-format=globaland--junit-format=per_filein the successful case to make sure the files are written correctly now.