function it_reports_exceptions()
 {
     // Arrange.
     $exception = new UnexpectedValueException();
     $extra = ['php' => 'wins'];
     // Act.
     $this->report($exception, $extra);
     // Assert.
     $this->raygun->SendException($exception, null, $extra)->shouldHaveBeenCalled();
 }
 /**
  * {@inheritDoc}
  */
 public function Send($message)
 {
     if (empty($this->apiKey)) {
         return;
     }
     return parent::Send($message);
 }
 /**
  * @param array $record
  * @param array $tags
  * @param array $customData
  * @param int|float $timestamp
  */
 protected function writeException(array $record, array $tags = array(), array $customData = array(), $timestamp = null)
 {
     $this->client->SendException($record['context']['exception'], $tags, $customData, $timestamp);
 }
 /**
  * Reports the exception to the SaaS platform
  *
  * @param Exception $e
  * @param array $extra
  * @return mixed
  */
 public function report(Exception $e, array $extra = [])
 {
     return $this->raygun->SendException($e, null, $extra);
 }