-
Notifications
You must be signed in to change notification settings - Fork 40
Increases the robustness of integration tests #259
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Note that this still needs some work. The idea is that this doesn't change any functionality, but makes the tests more enjoyable. The main point is preventing them from freezing in the CI if something gets broken. |
@mzimbres this is a big PR but entails almost no functional changes - it just sanitizes some aspects of some tests to make them more reliable, use timeouts and so on. It's ready for review. I'm working in parallel on something that fixes part of the reconnection problems and makes us closer to supporting UNIX sockets. |
Updates multiplexer to make requests complete with
error_code()
rather thanerror_code(0)
Integration tests now use
io_context::run_for
to run with a timeout and avoid deadlocksTests now use concrete lambdas where generic ones are not required
Tests now use BOOST_TEST with operator== to print values on error
Tests now use anonymous namespaces to detect dead code
Adds run_coroutine_test and removed start from common.hpp
Updates test_reconnect to perform relevant checks
Refactors how test_issue_50 launches its coroutines
Groups tests in CMake as unit or integration
Updates Jamfile tests to contain all unit tests and only unit tests