3
namespace React\Promise\PromiseTest;
5
trait PromisePendingTestTrait
8
* @return \React\Promise\PromiseAdapter\PromiseAdapterInterface
10
abstract public function getPromiseTestAdapter(callable $canceller = null);
13
public function thenShouldReturnAPromiseForPendingPromise()
15
$adapter = $this->getPromiseTestAdapter();
17
$this->assertInstanceOf('React\\Promise\\PromiseInterface', $adapter->promise()->then());
21
public function thenShouldReturnAllowNullForPendingPromise()
23
$adapter = $this->getPromiseTestAdapter();
25
$this->assertInstanceOf('React\\Promise\\PromiseInterface', $adapter->promise()->then(null, null, null));
29
public function cancelShouldReturnNullForPendingPromise()
31
$adapter = $this->getPromiseTestAdapter();
33
$this->assertNull($adapter->promise()->cancel());
37
public function doneShouldReturnNullForPendingPromise()
39
$adapter = $this->getPromiseTestAdapter();
41
$this->assertNull($adapter->promise()->done());
45
public function doneShouldReturnAllowNullForPendingPromise()
47
$adapter = $this->getPromiseTestAdapter();
49
$this->assertNull($adapter->promise()->done(null, null, null));
53
public function otherwiseShouldNotInvokeRejectionHandlerForPendingPromise()
55
$adapter = $this->getPromiseTestAdapter();
58
$adapter->promise()->otherwise($this->expectCallableNever());
62
public function alwaysShouldReturnAPromiseForPendingPromise()
64
$adapter = $this->getPromiseTestAdapter();
66
$this->assertInstanceOf('React\\Promise\\PromiseInterface', $adapter->promise()->always(function () {}));