Fix some Catch2 tests not returning exit code. #2943
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.
Description
#2707 was recently fixed by amending the error parsing expression.
This is a follow-up fix that will make use of us checking for
$LASTEXITCODE
too.xdp_test
andconnect_redirect_test
were swallowing the return code and implicitly returning 0 (per the C standard, p.13 https://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf)so the exit code portion of our error detecting was being ignored.
Here's an example from Catch2 docs:
https://github.com/catchorg/Catch2/blob/devel/docs/own-main.md#amending-the-catch2-config
And we're doing it right in
socket_tests.cpp
:https://github.com/microsoft/ebpf-for-windows/blob/main/tests/socket/socket_tests.cpp#L471
Testing
Locally running the tests without eBPF installed fails as expected and sets the $LASTEXITCODE to the number of failed tests.
![image](https://private-user-images.githubusercontent.com/12816515/272586486-a8f7a17a-05f4-4a9d-9de8-8e408b9b1156.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTg5MDQ2MjUsIm5iZiI6MTcxODkwNDMyNSwicGF0aCI6Ii8xMjgxNjUxNS8yNzI1ODY0ODYtYThmN2ExN2EtMDVmNC00YTlkLTlkZTgtOGU0MDhiOWIxMTU2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MjAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjIwVDE3MjUyNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRiNzhiNGE4MGZlODFmOGRlNWRhOWU2ZTgyYjIxNmNjNmU4ZGIwMmJhYjU5NmU5OTgxNGY3M2I5Mzk5OTc3MmImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.RmkfmvXYGIJxcG8T83mXI6ZAvXGktzNlj54iCRrem3w)