Helper package to ease testing with PHPUnit.

Fund package maintenance!

v1.4.0 2020-05-01 14:48 UTC

This package is auto-updated.

Last update: 2021-10-14 23:21:46 UTC



amphp/phpunit-util is a small helper package to ease testing with PHPUnit in combination with the Amp concurrency framework.

Required PHP Version

  • PHP 7.0+


composer require --dev amphp/phpunit-util



namespace Foo;

use Amp\ByteStream;
use Amp\PHPUnit\AsyncTestCase;
use Amp\Socket;

class BarTest extends AsyncTestCase
    // Each test case is executed as a coroutine and checked to run to completion
    public function test()
        $socket = yield Socket\connect('tcp://localhost:12345');
        yield $socket->write('foobar');
        $this->assertSame('foobar', yield ByteStream\buffer($socket));

Deprecated Functionality

This package also provides a PHPUnit TestListener to reset the global event loop after each test, but this is deprecated.

    <!-- ... -->

    <!-- DEPRECATED, use AsyncTestCase instead -->
        <!-- DEPRECATED, use AsyncTestCase instead --> 
        <listener class="Amp\PHPUnit\LoopReset" />

    <!-- ... -->