/** * */ public function testApiCancel_CancelsPendingInputArrayPromises_IfOnePromiseFulfills() { $test = $this->getTest(); $deferred = new Deferred(); $deferred->resolve(); $mock = $test->createCallableMock(); $mock->expects($test->never())->method('__invoke'); $promise = $deferred->getPromise(); $promise->then(null, null, $mock); $mock2 = $test->getMock(PromiseInterface::class); $mock2->expects($test->once())->method('cancel'); Promise::some([$promise, $mock2], 1)->cancel(); }
/** * */ public function testApiSome_CancelsPendingInputArrayPromises_IfEnoughPromisesReject() { $test = $this->getTest(); $mock = $test->createCallableMock(); $mock->expects($test->never())->method('__invoke'); $deferred = new Deferred($mock); $deferred->reject(); $mock2 = $test->getMock(PromiseInterface::class); $mock2->expects($test->once())->method('cancel'); Promise::some([$deferred->getPromise(), $mock2], 2); }