/** * assert handler * * @param string $file filename * @param int $line line number * @param string $code code that failed * * @returns void * @throws Exception each time called new Exception is thrown */ public static function myAssertHandler($file, $line, $code) { $fileDump = CodeSnippet::getCodeSnippet($file, $line, self::NEAR_CODE); $message = "Assertion failed on line {$file}: {$line},code:\n\n{$fileDump}"; $message .= "\nFailed expression: "; $message .= var_export($code, true); $message .= "\n"; throw new Exception($message); }
/** * Returns information about this particular trace event. * * @returns array with with time, caller data and code snippet */ private function getInfoArray() { $info = array(); $caller = TraceUtil::getCallerData(2); $class = isset($caller['class']) ? $caller['class'] : ""; $class = preg_replace("@.*\\\\@", "", $class); $function = $caller['function']; $caller = TraceUtil::getCallerData(1); $file = $caller['file']; $line = $caller['line']; $snippet = CodeSnippet::getCodeSnippet($file, $line, 5); $info['class'] = $class; $info['function'] = $function; $info['line'] = $line; $info['file'] = $file; $info['snippet'] = $snippet; $info['elapsedTime'] = $this->timer->getElapsedTime(); return $info; }