aboutsummaryrefslogtreecommitdiff
path: root/src/core/aio_test.c
Commit message (Collapse)AuthorAge
* aio.c - include file fixesGarrett D'Amore2025-10-10
|
* AIO: Use nng_err for cancellation callback instead of int.Garrett D'Amore2025-04-27
| | | | | | This is part of our work to improve type safety/awareness, and also improve debugger support, for NNG error codes. There are still quite a few more but this should help.
* api: rename nng_send_aio and nng_recv_aio to nng_socket_send and nng_socket_recvGarrett D'Amore2025-01-04
| | | | This aligns more closely with the nng_ctx functions.
* socket: rename nng_close to nng_socket_closeGarrett D'Amore2024-12-31
|
* aio test: add a test for IOV overrunGarrett D'Amore2024-12-29
|
* aio: nng_aio_defer replaced by nng_aio_startGarrett D'Amore2024-12-26
| | | | | This represents an API change, and we remove the nng_aio_begin function as well, introducing the lightweight nng_aio_reset instead.
* aio: introduce NNG_ESTOPPEDGarrett D'Amore2024-12-26
| | | | | | | | | | | This error code results when an AIO is stopped permanently, as a result of nni_aio_close or nni_aio_stop. The associated AIO object cannot be used again. This discrimantes against a file being closed, or a temporary cancellation which might allow the aio to be reused. Consumers must check for this error status in their callbacks, and not resubmit an operation that failed with this error. Doing so, will result in an infinite loop of submit / errors.
* aio: separate stop / shutdown from fini (deallocate)Garrett D'Amore2024-12-07
| | | | | | | | | | | | | | Probably other subsystems should get the same treatment. We need to basically start the process of shutting down so that subsystems know to cease operation before we rip memory out from underneath them. This ensures that no new operations can be started as well, once we have begun the process of teardown. We also enhanced the completion of sleep to avoid some extra locking contention, since the expiration *is* the completion. Includes a test for this case.
* fix aio test failures on darwinGarrett D'Amore2024-10-06
| | | | | Actually this test appears to be broken everywhere, and the only reason it ever worked is that we took > 50 ms to context switch.
* fixes #1751 Support nng_aio_set_expire().Garrett D'Amore2023-12-30
| | | | While here fixed a number of nits in comments.
* fixes #1574 Non-blocking version of nng_aio_wait / nng_aio_resultGarrett D'Amore2022-04-18
| | | | | | | This introduces a new API, nng_aio_busy(), that can be used to query the status of the aio without blocking. Some minor documentation fixes are included.
* Test fixes.Garrett D'Amore2021-07-07
|
* Disable clock-dependent checks on macOS in CI/CD.Garrett D'Amore2021-07-06
| | | | | | GitHub's darwin server farm appears possibly overloaded, and the timing specific checks in that environment appear to be busted. Local instances of macOS don't seem to have problems though.
* fixes #1456 bad access in OSX thread on nn (#1457)Garrett D'Amore2021-07-01
| | | | * fixes #1456 bad access in OSX thread on nn * Fix broken aio in darwin cloud.
* Extend times for aio_sleep cancel test for benefit of DarwinGarrett D'Amore2021-06-02
|
* Add a couple of test cases for nng_sleep_aio.Garrett D'Amore2021-03-12
|
* fixes #1372 nni_reap could be smallerGarrett D'Amore2020-12-19
|
* fixes #1313 support deferred nng_aio destructionGarrett D'Amore2020-12-12
|
* New NUTS test framework (NNG Unit Test Support).Garrett D'Amore2020-11-23
| | | | | | | | | | | | | This is based on testutil/acutest, but is cleaner and fixes some short-comings. We will be adding more support for additional common paradigms to better facilitate transport tests. While here we added some more test cases, and fixed a possible symbol collision in the the stats framework (due to Linux use of a macro definition of "si_value" in a standard OS header). Test coverage may regress slightly as we are no longer using some of the legacy APIs.
* Work for test refactoring.Garrett D'Amore2020-11-18
There are a few major areas in this change. * CMake options are now located in a common cmake/NNGOptions.cmake file. This should make it easier for folks to figure out what the options are, and how they are used. * Tests are now scoped with their directory name, which should avoid possible name collisions with test names. * A number of tests have been either moved or incorporated into the newer testutil/acutest framework. We are moving away from my old c-convey framework to something easier to debug. * We use CMake directories a bit more extensively leading to a much cleaner CMake structure. It's not complete, but a big step in the right direction, and a preview of future work. * Tests are now run with verbose flags, so we get more test results in the CI/CD logs.