Feature release for the 1.x series: adds CoroutineGroup for testing coroutine-native code directly. Supported
versions are unchanged (~12.5.24 on PHP >= 8.3, ~13.0 on PHP >= 8.4.1), and no existing test or consumer project
needs changing.
Added
Deminy\Counit\CoroutineGroup, a nesting-safe substitute forSwoole\Coroutine\Scheduler, for tests that
manage their own coroutines directly (a mutex, a queue, or other coroutine-native code).run(...$callables)is
a drop-in replacement safe under plain PHPUnit and counit, with or without Swoole;runWithTimeout(float $seconds, ...$callables)adds a bounded wait. Seedocs/coroutine-native-testing.md.
(de8cd89, 81ddb96, 7717428, e78cd02, c218692, 772cb20)
Changes
- "The Manual Approach" is documented as an escape hatch, not a co-equal alternative to the automatic approach.
(4b09c62) - The coroutine-native-testing guide and the benchmark comparisons moved to
docs/. (de72ab4, 4b09c62)
Full changelog: 1.1.3...1.1.4