/** * Returns an array of details about this error * * @return Array */ public function getDetails() { if (!$this->exception instanceof \r8\Exception) { return array(); } return array("Exception" => '\\' . get_class($this->exception), "Description" => $this->exception->getDescription()) + $this->exception->getData(); }
/** * Returns a description for an exception. * * @param Exception $e * @return string * @since Method available since Release 3.2.0 */ public static function exceptionToString(Exception $e) { if ($e instanceof PHPUnit_Framework_SelfDescribing) { if ($e instanceof PHPUnit_Framework_ExpectationFailedException) { $comparisonFailure = $e->getComparisonFailure(); $description = $e->getDescription(); $message = $e->getCustomMessage(); if ($message == '') { $buffer = ''; } else { $buffer = $message . "\n"; } if ($comparisonFailure !== NULL) { if ($comparisonFailure->identical()) { if ($comparisonFailure instanceof PHPUnit_Framework_ComparisonFailure_Object) { $buffer .= 'Failed asserting that two variables ' . "reference the same object.\n"; } else { $buffer .= $comparisonFailure->toString() . "\n"; } } else { if ($comparisonFailure instanceof PHPUnit_Framework_ComparisonFailure_Scalar) { $buffer .= sprintf("Failed asserting that %s matches expected %s.\n", PHPUnit_Util_Type::toString($comparisonFailure->getActual()), PHPUnit_Util_Type::toString($comparisonFailure->getExpected())); } else { if ($comparisonFailure instanceof PHPUnit_Framework_ComparisonFailure_Array || $comparisonFailure instanceof PHPUnit_Framework_ComparisonFailure_Object || $comparisonFailure instanceof PHPUnit_Framework_ComparisonFailure_String) { $buffer .= sprintf("Failed asserting that two %ss are equal.\n%s\n", strtolower(substr(get_class($comparisonFailure), 36)), $comparisonFailure->toString()); } } } } else { $buffer .= $e->toString(); if (!empty($buffer)) { $buffer .= "\n"; } if (strpos($buffer, $description) === FALSE) { $buffer .= $description . "\n"; } } } else { $buffer = $e->toString(); if (!empty($buffer)) { $buffer .= "\n"; } } } else { if ($e instanceof PHPUnit_Framework_Error) { $buffer = $e->getMessage() . "\n"; } else { $buffer = get_class($e) . ': ' . $e->getMessage() . "\n"; } } return $buffer; }