/** * {@inheritDoc} */ public function request($path, $body, $httpMethod = 'GET', array $headers = array(), array $options = array()) { if (!empty($this->options['debug'])) { $options['debug'] = $this->options['debug']; } if (count($headers) > 0) { $options['headers'] = $headers; } $options['body'] = $body; $request = $this->client->createRequest($httpMethod, $path, $options); try { $response = $this->client->send($request); } catch (\Exception $e) { $this->errorHandler->onException($e); } return $response; }
/** * @test * @expectedException Bitreserve\Exception\RuntimeException */ public function shouldThrowRuntimeExceptionWhenStatusCodeIs500() { $request = $this->getRequestMock(); $response = new Response(500); $errorHandler = new ErrorHandler(); $errorHandler->onException(new RequestException('500 error', $request, $response)); }