예제 #1
0
 /**
  *
  */
 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();
 }
예제 #2
0
 /**
  *
  */
 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);
 }