1
0
mirror of https://github.com/danog/amp.git synced 2024-12-02 17:37:50 +01:00
amp/test/DeferTest.php
2020-10-06 23:40:14 -05:00

30 lines
626 B
PHP

<?php
namespace Amp\Test;
use Amp\Loop;
use Amp\PHPUnit\AsyncTestCase;
use Amp\PHPUnit\TestException;
use function Amp\defer;
use function Amp\delay;
class DeferTest extends AsyncTestCase
{
public function testExceptionsRethrownToLoopHandler(): void
{
Loop::setErrorHandler(function (\Throwable $exception) use (&$reason): void {
$reason = $exception;
});
$exception = new TestException;
defer(function () use ($exception): void {
throw $exception;
});
delay(0); // Tick event loop.
$this->assertSame($exception, $reason);
}
}