File tree Expand file tree Collapse file tree 1 file changed +37
-0
lines changed
Expand file tree Collapse file tree 1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace Http \Adapter \React \Tests ;
4+
5+ use GuzzleHttp \Psr7 \Response ;
6+ use Http \Adapter \React \Promise ;
7+ use Http \Adapter \React \ReactFactory ;
8+ use PHPUnit \Framework \TestCase ;
9+ use React \Promise \Deferred ;
10+
11+ class PromiseTest extends TestCase
12+ {
13+ private $ loop ;
14+
15+ public function setUp ()
16+ {
17+ $ this ->loop = ReactFactory::buildEventLoop ();
18+ }
19+
20+ public function testChain ()
21+ {
22+ $ deferred = new Deferred ();
23+ $ promise = new Promise ($ deferred ->promise ());
24+ $ promise ->setLoop ($ this ->loop );
25+ $ response = new Response (200 );
26+
27+ $ lastPromise = $ promise ->then (function (Response $ response ) {
28+ return $ response ->withStatus (300 );
29+ });
30+
31+ $ deferred ->resolve ($ response );
32+ $ updatedResponse = $ lastPromise ->wait ();
33+
34+ self ::assertEquals (200 , $ response ->getStatusCode ());
35+ self ::assertEquals (300 , $ updatedResponse ->getStatusCode ());
36+ }
37+ }
You can’t perform that action at this time.
0 commit comments