swift-nio/IntegrationTests
Cory Benfield fd35cd9e52
Extend the integration test harness to track FDs (#2411)
* Extend the integration test harness to track FDs

Motivation

This patch extends the NIO integration test harness to track
file descriptors, in particular to search for leaks. This
change has been validated on Linux and Darwin, and in both cases
correctly diagnoses FD leaks.

The goal is to enable us to regression test for things like

Modifications

- Add support for hooking socket and close calls.
- Wire up this support into the test harness.
- Extend the test harness to handle the logging.
- Add new regression test for #2047.

Results

We can write regression tests for FD leaks.

* Disable FD checking in most builds.

I'm doing this for speed reasons

* Always print the leaked fds number
2023-04-26 08:38:18 -07:00
..
allocation-counter-tests-framework Extend the integration test harness to track FDs (#2411) 2023-04-26 08:38:18 -07:00
tests_01_http add PipeChannel (#1138) 2019-10-16 22:06:55 -07:00
tests_02_syscall_wrappers Drop Swift 5.5 (#2406) 2023-04-17 08:40:35 +01:00
tests_03_debug_binary_checks crash tester test suite (#1536) 2020-06-01 12:51:39 +01:00
tests_04_performance Extend the integration test harness to track FDs (#2411) 2023-04-26 08:38:18 -07:00
tests_05_assertions Fix main nightly CI (#2337) 2023-01-09 18:34:48 +00:00
plugin_echo.sh add license headers for shell scripts (#135) 2018-03-12 17:12:47 +00:00
plugin_junit_xml.sh add license headers for shell scripts (#135) 2018-03-12 17:12:47 +00:00
run-single-test.sh add 'info' mode for integration tests (#318) 2018-04-17 10:13:05 +02:00
run-tests.sh integration tests: debug mode which doesn't delete tmp (#852) 2019-02-28 10:26:02 +00:00
test_functions.sh add 'info' mode for integration tests (#318) 2018-04-17 10:13:05 +02:00