public function testCreateFromErrors() { $application = new Application('foo\\bar'); $request = new Request('http://foo.bar'); $server = new Server('foo.bar'); $errors = array(new Error('foo', E_RECOVERABLE_ERROR, 'Exception')); $factory = new ReportFactory($application, $request, $server); $report = $factory->createFromErrors($errors); $this->assertEquals(new Report($application, $errors, $request, $server), $report); }
/** * Sends all the errors collected by the error handler. */ public function sendErrors() { $errors = $this->errorHandler->getErrors(); if (empty($errors)) { return; } $report = $this->reportFactory->createFromErrors($errors); try { $this->client->sendReport($report); } catch (BadResponseException $exception) { $label = 'Error'; $request = $exception->getRequest(); $response = $exception->getResponse(); if ($response->isClientError()) { $label = 'Client error'; } elseif ($response->isServerError()) { $label = 'Server error'; } error_log(sprintf('%s "%s" with status code %i at %s', $label, $response->getReasonPhrase(), $response->getStatusCode(), $request->getUrl())); } catch (\Exception $exception) { error_log($exception->getMessage()); } }