diff options
author | marvin-borner@live.com | 2018-04-10 21:50:16 +0200 |
---|---|---|
committer | marvin-borner@live.com | 2018-04-10 21:54:48 +0200 |
commit | fc9401f04a3aca5abb22f87ebc210de8afe11d32 (patch) | |
tree | b0b310f3581764ec3955f4e496a05137a32951c3 /assets/php/vendor/react/promise-timer/tests/FunctionResolveTest.php | |
parent | 286d643180672f20526f3dc3bd19d7b751e2fa97 (diff) |
Initial Commit
Diffstat (limited to 'assets/php/vendor/react/promise-timer/tests/FunctionResolveTest.php')
-rw-r--r-- | assets/php/vendor/react/promise-timer/tests/FunctionResolveTest.php | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/assets/php/vendor/react/promise-timer/tests/FunctionResolveTest.php b/assets/php/vendor/react/promise-timer/tests/FunctionResolveTest.php new file mode 100644 index 0000000..0bfdc21 --- /dev/null +++ b/assets/php/vendor/react/promise-timer/tests/FunctionResolveTest.php @@ -0,0 +1,71 @@ +<?php + +namespace React\Tests\Promise\Timer; + +use React\Promise\Timer; + +class FunctionResolveTest extends TestCase +{ + public function testPromiseIsPendingWithoutRunningLoop() + { + $promise = Timer\resolve(0.01, $this->loop); + + $this->expectPromisePending($promise); + } + + public function testPromiseExpiredIsPendingWithoutRunningLoop() + { + $promise = Timer\resolve(-1, $this->loop); + + $this->expectPromisePending($promise); + } + + public function testPromiseWillBeResolvedOnTimeout() + { + $promise = Timer\resolve(0.01, $this->loop); + + $this->loop->run(); + + $this->expectPromiseResolved($promise); + } + + public function testPromiseExpiredWillBeResolvedOnTimeout() + { + $promise = Timer\resolve(-1, $this->loop); + + $this->loop->run(); + + $this->expectPromiseResolved($promise); + } + + public function testWillStartLoopTimer() + { + $loop = $this->getMockBuilder('React\EventLoop\LoopInterface')->getMock(); + $loop->expects($this->once())->method('addTimer')->with($this->equalTo(0.01)); + + Timer\resolve(0.01, $loop); + } + + public function testCancellingPromiseWillCancelLoopTimer() + { + $loop = $this->getMockBuilder('React\EventLoop\LoopInterface')->getMock(); + + $timer = $this->getMockBuilder(interface_exists('React\EventLoop\TimerInterface') ? 'React\EventLoop\TimerInterface' : 'React\EventLoop\Timer\TimerInterface')->getMock(); + $loop->expects($this->once())->method('addTimer')->will($this->returnValue($timer)); + + $promise = Timer\resolve(0.01, $loop); + + $loop->expects($this->once())->method('cancelTimer')->with($this->equalTo($timer)); + + $promise->cancel(); + } + + public function testCancelingPromiseWillRejectTimer() + { + $promise = Timer\resolve(0.01, $this->loop); + + $promise->cancel(); + + $this->expectPromiseRejected($promise); + } +} |