1
0
mirror of https://github.com/danog/amp.git synced 2024-11-30 04:29:08 +01:00
amp/test/LoopTest.php
Niklas Keller 79ab41e5bf Update php-cs-fixer to version 2 and upgrade rules
This also fixes the code style according to the new rules.
2017-04-24 16:22:02 +02:00

50 lines
1.3 KiB
PHP

<?php
namespace Amp\Test;
use Amp\Loop;
use PHPUnit\Framework\TestCase;
class LoopTest extends TestCase {
public function testDelayWithNegativeDelay() {
$this->expectException(\Error::class);
Loop::delay(-1, function () {});
}
public function testRepeatWithNegativeInterval() {
$this->expectException(\Error::class);
Loop::repeat(-1, function () {});
}
public function testOnReadable() {
Loop::run(function () {
$ends = stream_socket_pair(\stripos(PHP_OS, "win") === 0 ? STREAM_PF_INET : STREAM_PF_UNIX, STREAM_SOCK_STREAM, STREAM_IPPROTO_IP);
fwrite($ends[0], "trigger readability watcher");
Loop::onReadable($ends[1], function () {
$this->assertTrue(true);
Loop::stop();
});
});
}
public function testOnWritable() {
Loop::run(function () {
Loop::onWritable(STDOUT, function () {
$this->assertTrue(true);
Loop::stop();
});
});
}
public function testGet() {
$this->assertInstanceOf(Loop\Driver::class, Loop::get());
}
public function testGetInto() {
$this->assertSame(Loop::get()->getInfo(), Loop::getInfo());
}
}