コード例 #1
0
ファイル: PromiseTest.php プロジェクト: lewishealey/confetti
 public function testDoesNotForwardRejectedPromise()
 {
     $res = [];
     $p = new Promise();
     $p2 = new Promise();
     $p2->cancel();
     $p2->then(function ($v) use(&$res) {
         $res[] = "B:{$v}";
         return $v;
     });
     $p->then(function ($v) use($p2, &$res) {
         $res[] = "B:{$v}";
         return $p2;
     })->then(function ($v) use(&$res) {
         $res[] = 'C:' . $v;
     });
     $p->resolve('a');
     $p->then(function ($v) use(&$res) {
         $res[] = 'D:' . $v;
     });
     P\queue()->run();
     $this->assertEquals(['B:a', 'D:a'], $res);
 }
コード例 #2
0
ファイル: Coroutine.php プロジェクト: nsandlin/linepig
 public function cancel()
 {
     $this->currentPromise->cancel();
     $this->result->cancel();
 }