You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We currently have some tests, such as "sock_addr_invoke_concurrent1" in netebpfext_unit.cpp,
"multi_attach_concurrency_test1" in socket_tests.cpp, etc. that incorrectly call REQUIRE() in multiple concurrent threads,
which is not safe to do with catch2, as noted at the above link. This is by design since it says
"We currently do not plan to support thread-safe assertions."
As such, we need to fix ebpf-for-windows to not do so. An alternative might be to set some global variable and exit the thread,
then do REQUIRE() back in the main test function once the threads exit.
Describe the bug
Per https://github.com/catchorg/Catch2/blob/devel/docs/limitations.md#thread-safe-assertions
thread-safe REQUIRE() is not supported by catch2.
We currently have some tests, such as "sock_addr_invoke_concurrent1" in netebpfext_unit.cpp,
"multi_attach_concurrency_test1" in socket_tests.cpp, etc. that incorrectly call REQUIRE() in multiple concurrent threads,
which is not safe to do with catch2, as noted at the above link. This is by design since it says
"We currently do not plan to support thread-safe assertions."
I previously filed catchorg/Catch2#2935 but above link was the answer.
As such, we need to fix ebpf-for-windows to not do so. An alternative might be to set some global variable and exit the thread,
then do REQUIRE() back in the main test function once the threads exit.
OS information
No response
Steps taken to reproduce bug
Upgrade catch2 to latest.
Expected behavior
Upgrading catch2 should succeed.
Actual outcome
https://github.com/microsoft/ebpf-for-windows/actions/runs/12214862186/job/34076302844
Additional details
No response
The text was updated successfully, but these errors were encountered: