1
0
mirror of https://github.com/guzzle/guzzle.git synced 2025-02-24 18:13:00 +01:00

Adding another test

This commit is contained in:
Michael Dowling 2014-09-18 22:39:23 -07:00
parent 123fdd4d1a
commit 95d7473d9e
2 changed files with 16 additions and 3 deletions

View File

@ -249,13 +249,13 @@ class Client implements ClientInterface
throw $this->getNoRingResponseException($trans->request); throw $this->getNoRingResponseException($trans->request);
} catch (\Exception $e) { } catch (\Exception $e) {
$this->wrapException($request, $e); throw $this->wrapException($request, $e);
} }
} }
private function wrapException(RequestInterface $request, \Exception $e) private function wrapException(RequestInterface $request, \Exception $e)
{ {
throw $e instanceof RequestException return $e instanceof RequestException
? $e ? $e
: new RequestException($e->getMessage(), $request, null, $e); : new RequestException($e->getMessage(), $request, null, $e);
} }
@ -274,7 +274,7 @@ class Client implements ClientInterface
// Exceptions need to be removed when intercepting errors, // Exceptions need to be removed when intercepting errors,
// otherwise, they're thrown. // otherwise, they're thrown.
if ($trans->exception) { if ($trans->exception) {
$this->wrapException($trans->request, $trans->exception); throw $this->wrapException($trans->request, $trans->exception);
} }
// No exception, so the transaction should have a response. // No exception, so the transaction should have a response.
if ($trans->response) { if ($trans->response) {

View File

@ -338,6 +338,19 @@ class ClientTest extends \PHPUnit_Framework_TestCase
$client->get('http://httpbin.org'); $client->get('http://httpbin.org');
} }
/**
* @expectedException \GuzzleHttp\Exception\RequestException
* @expectedExceptionMessage incorrectly implemented Guzzle Ring adapter
*/
public function testEnsuresResponseIsPresentAfterDereferencing()
{
$adapter = function () {
return new Future(function () { return []; });
};
$client = new Client(['adapter' => $adapter]);
$client->get('http://httpbin.org')->deref();
}
public function testClientHandlesErrorsDuringBeforeSend() public function testClientHandlesErrorsDuringBeforeSend()
{ {
$client = new Client(); $client = new Client();