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