/** * Returns an appropriate PSR-3 log level for the given native PHP error severity. * * @param int $severity The native PHP severity * @throws \Ableron\Core\Exception\SystemException In case the given severity is unknown * @return string */ public function toPsr3LogLevel(int $severity) { switch (ExceptionUtil::getSeverityCategory($severity)) { case ExceptionUtil::SEVERITY_CATEGORY_ERROR: return LogLevel::ERROR; case ExceptionUtil::SEVERITY_CATEGORY_WARNING: return LogLevel::WARNING; case ExceptionUtil::SEVERITY_CATEGORY_INFO: return LogLevel::NOTICE; default: throw new SystemException('Unknown PHP error severity category for severity ' . $severity, 0, E_USER_ERROR, __FILE__, __LINE__); } }
/** * Tests whether getSeverityCategory() works as expected. * * @dataProvider dataProviderTestSeverityType */ public function testGetSeverityCategory($severity, $isNotice, $isWarning, $isError, $severityType) { $this->assertSame($severityType, ExceptionUtil::getSeverityCategory($severity)); }