44 lines
1.4 KiB
PHP
Executable File
44 lines
1.4 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
|
|
/**
|
|
* Set custom error handler.
|
|
*/
|
|
function setCustomErrorHandler()
|
|
{
|
|
set_error_handler(
|
|
function ($errNo, $errStr, $errFile, $errLine) {
|
|
$errLevel = error_reporting();
|
|
if (($errLevel & $errNo) !== 0) {
|
|
$errorNames = [
|
|
E_ERROR => 'Error',
|
|
E_WARNING => 'Warning',
|
|
E_PARSE => 'Parse',
|
|
E_NOTICE => 'Notice',
|
|
E_CORE_ERROR => 'Core Error',
|
|
E_CORE_WARNING => 'Core Warning',
|
|
E_COMPILE_ERROR => 'Compile Error',
|
|
E_COMPILE_WARNING => 'Compile Warning',
|
|
E_USER_ERROR => 'User Error',
|
|
E_USER_WARNING => 'User Warning',
|
|
E_USER_NOTICE => 'User Notice',
|
|
E_STRICT => 'Strict',
|
|
E_RECOVERABLE_ERROR => 'Recoverable Error',
|
|
E_DEPRECATED => 'Deprecated',
|
|
E_USER_DEPRECATED => 'User Deprecated',
|
|
];
|
|
|
|
$errName = isset($errorNames[$errNo]) ? $errorNames[$errNo] : "";
|
|
|
|
throw new \PHPUnit\Framework\Exception(
|
|
sprintf("%s: %s in %s:%s.", $errName, $errStr, $errFile, $errLine),
|
|
$errNo
|
|
);
|
|
}
|
|
}
|
|
);
|
|
}
|