Skip to content

Commit aff6a16

Browse files
committed
Merge pull request #31 from arnaud-lb/unhide-exceptions
Avoid hidding exceptions thrown in HttpClient\Request error handlers
2 parents 116745a + 94f37e3 commit aff6a16

File tree

3 files changed

+21
-1
lines changed

3 files changed

+21
-1
lines changed

composer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"react/dns": "0.4.*",
1111
"react/event-loop": "0.4.*",
1212
"react/stream": "0.4.*",
13+
"react/promise": "~2.2",
1314
"evenement/evenement": "~2.0"
1415
},
1516
"autoload": {

src/Request.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public function writeHead()
5959

6060
$this
6161
->connect()
62-
->then(
62+
->done(
6363
function ($stream) use ($requestData, &$streamRef, &$stateRef) {
6464
$streamRef = $stream;
6565

tests/RequestTest.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,25 @@ public function requestShouldEmitErrorIfConnectionEmitsError()
219219
$request->handleError(new \Exception('test'));
220220
}
221221

222+
/**
223+
* @test
224+
* @expectedException Exception
225+
* @expectedExceptionMessage something failed
226+
*/
227+
public function requestDoesNotHideErrors()
228+
{
229+
$requestData = new RequestData('GET', 'http://www.example.com');
230+
$request = new Request($this->connector, $requestData);
231+
232+
$this->rejectedConnectionMock();
233+
234+
$request->on('error', function () {
235+
throw new \Exception('something failed');
236+
});
237+
238+
$request->end();
239+
}
240+
222241
/** @test */
223242
public function postRequestShouldSendAPostRequest()
224243
{

0 commit comments

Comments
 (0)