diff --git a/www/admin/class_test.logging.php b/www/admin/class_test.logging.php index d93f8f01..cfb22029 100644 --- a/www/admin/class_test.logging.php +++ b/www/admin/class_test.logging.php @@ -36,7 +36,7 @@ $log = new CoreLibs\Logging\Logging([ 'log_per_date' => true, ]); -$PAGE_NAME = 'TEST CLASS: DEBUG LOGGING'; +$PAGE_NAME = 'TEST CLASS: LOGGING'; print ""; print "
- * @return string formatted array for output withtag added + * @param mixed $data any data + * @param bool $no_html default add+ * @return string formatted array for output withtag added */ - public static function printAr(array $array, bool $no_html = false): string + public static function printAr(mixed $data, bool $no_html = false): string { return $no_html ? - print_r($array, true) : - '' . print_r($array, true) . ''; + print_r($data, true) : + '' . print_r($data, true) . ''; } /** * alternate name for printAr function * - * @param array$array any array - * @param bool $no_html default add - * @return string formatted array for output withtag added + * @param mixed $data any array + * @param bool $no_html default add+ * @return string formatted array for output withtag added */ - public static function printArray(array $array, bool $no_html = false): string + public static function printArray(mixed $data, bool $no_html = false): string { - return self::printAr($array, $no_html); + return self::printAr($data, $no_html); } /** @@ -65,12 +65,12 @@ class Support * Do not use this without using it in a string in debug function * Note: for full data debug dumps use Support::dumpVar() * - * @param array$a Array to format - * @return string print_r formated + * @param mixed $data Data to print + * @return string print_r formated */ - public static function prAr(array $a): string + public static function prAr(mixed $data): string { - return self::printAr($a, true); + return self::printAr($data, true); } /** diff --git a/www/vendor/egrajp/corelibs-composer-all/src/Logging/Logging.php b/www/vendor/egrajp/corelibs-composer-all/src/Logging/Logging.php index 0f4ea970..ad9feed8 100644 --- a/www/vendor/egrajp/corelibs-composer-all/src/Logging/Logging.php +++ b/www/vendor/egrajp/corelibs-composer-all/src/Logging/Logging.php @@ -407,13 +407,6 @@ class Logging } $this->setLogFlag($log_flag_key); } - // init per run uid - if ($this->getLogFlag(Flag::per_run)) { - $this->setLogUniqueId(); - } elseif ($this->getLogFlag(Flag::per_date)) { - // init file date - $this->log_file_date = date('Y-m-d'); - } } /** @@ -535,7 +528,7 @@ class Logging * Prepare the log message with all needed info blocks: * [timestamp] [host name] [file path + file] [running uid] {class} - message * - * @param string $level_str Log level we will write to + * @param Level $level Log level we will write to * @param string|Stringable $message The message to write * @param mixed[] $context Any additional info we want to attach in any format * @param string $group_id A group id, only used in DEBUG level, @@ -543,11 +536,15 @@ class Logging * @return string */ private function prepareLog( - string $level_str, + Level $level, string|\Stringable $message, array $context = [], string $group_id = '', ): string { + // only prepare if to write log level is in set log level + if (!$this->checkLogLevel($level)) { + return ''; + } // file + line: call not this but one before (the one that calls this) $file_line = Support::getCallerFileLine(2) ?? System::getPageName(System::FULL_PATH); @@ -562,7 +559,7 @@ class Logging $timestamp = Support::printTime(); // if group id is empty replace it with current level - $group_str = $level_str; + $group_str = $level->getName(); if (!empty($group_id)) { $group_str .= ':' . $group_id; } @@ -776,6 +773,13 @@ class Logging public function setLogFlag(Flag $flag): void { $this->log_flags |= $flag->value; + // init per run uid + if ($this->getLogFlag(Flag::per_run)) { + $this->setLogUniqueId(); + } elseif ($this->getLogFlag(Flag::per_date)) { + // init file date + $this->setLogDate(); + } } /** @@ -927,9 +931,9 @@ class Logging array $context = [] ): bool { return $this->writeErrorMsg( - $this->log_level, + Level::Debug, $this->prepareLog( - Level::Debug->getName(), + Level::Debug, $prefix . $message, $context, $group_id @@ -950,7 +954,7 @@ class Logging return $this->writeErrorMsg( Level::Info, $this->prepareLog( - Level::Info->getName(), + Level::Info, $message, $context, ) @@ -969,7 +973,7 @@ class Logging return $this->writeErrorMsg( Level::Notice, $this->prepareLog( - Level::Notice->getName(), + Level::Notice, $message, $context, ) @@ -988,7 +992,7 @@ class Logging return $this->writeErrorMsg( Level::Warning, $this->prepareLog( - Level::Warning->getName(), + Level::Warning, $message, $context, ) @@ -1007,7 +1011,7 @@ class Logging return $this->writeErrorMsg( Level::Error, $this->prepareLog( - Level::Error->getName(), + Level::Error, $message, $context, ) @@ -1026,7 +1030,7 @@ class Logging return $this->writeErrorMsg( Level::Critical, $this->prepareLog( - Level::Critical->getName(), + Level::Critical, $message, $context, ) @@ -1045,7 +1049,7 @@ class Logging return $this->writeErrorMsg( Level::Alert, $this->prepareLog( - Level::Alert->getName(), + Level::Alert, $message, $context, ) @@ -1064,7 +1068,7 @@ class Logging return $this->writeErrorMsg( Level::Emergency, $this->prepareLog( - Level::Emergency->getName(), + Level::Emergency, $message, $context, ) @@ -1082,12 +1086,12 @@ class Logging * But this does not wrap it in * Do not use this without using it in a string in debug function * - * @param array $a Array to format - * @return string print_r formated + * @param mixed $data Data to format + * @return string print_r formated */ - public function prAr(array $a): string + public function prAr(mixed $data): string { - return Support::printArray($a, true); + return Support::printArray($data, true); } /** diff --git a/www/vendor/egrajp/corelibs-composer-all/src/Output/Form/Generate.php b/www/vendor/egrajp/corelibs-composer-all/src/Output/Form/Generate.php index 6e7e9dfc..52884871 100644 --- a/www/vendor/egrajp/corelibs-composer-all/src/Output/Form/Generate.php +++ b/www/vendor/egrajp/corelibs-composer-all/src/Output/Form/Generate.php @@ -232,13 +232,13 @@ class Generate extends \CoreLibs\DB\Extended\ArrayIO /** @var string */ public string $col_name; // the name of the columen (before _ ) [used for order button] /** @var int */ - public int $yes; // the yes flag that triggers the template to show ALL and not only new/load + public int $yes = 0; // the yes flag that triggers the template to show ALL and not only new/load /** @var string */ - public string $msg; // the error msg + public string $msg = ''; // the error msg /** @var int */ - public int $error; // the error flag set for printing red error msg + public int $error = 0; // the error flag set for printing red error msg /** @var int */ - public int $warning; // warning flag, for information (saved, loaded, etc) + public int $warning = 0; // warning flag, for information (saved, loaded, etc) /** @var string */ public string $archive_pk_name; // the pk name for the load select form /** @var string */ @@ -282,7 +282,7 @@ class Generate extends \CoreLibs\DB\Extended\ArrayIO public array $login_acl = []; // layout publics /** @var int */ - public int $table_width; + public int $table_width = 0; // internal lang & encoding vars /** @var string */ public string $lang_dir = ''; diff --git a/www/vendor/egrajp/corelibs-composer-all/src/Template/SmartyExtend.php b/www/vendor/egrajp/corelibs-composer-all/src/Template/SmartyExtend.php index 3d926b1c..c8cb48c5 100644 --- a/www/vendor/egrajp/corelibs-composer-all/src/Template/SmartyExtend.php +++ b/www/vendor/egrajp/corelibs-composer-all/src/Template/SmartyExtend.php @@ -77,79 +77,79 @@ class SmartyExtend extends \Smarty public string $COMPILE_ID = ''; // template vars /** @var string */ - public string $MASTER_TEMPLATE_NAME; + public string $MASTER_TEMPLATE_NAME = ''; /** @var string */ - public string $PAGE_FILE_NAME; + public string $PAGE_FILE_NAME = ''; /** @var string */ - public string $CONTENT_INCLUDE; + public string $CONTENT_INCLUDE = ''; /** @var string */ - public string $FORM_NAME; + public string $FORM_NAME = ''; /** @var string */ - public string $FORM_ACTION; + public string $FORM_ACTION = ''; /** @var string */ - public string $L_TITLE; + public string $L_TITLE = ''; /** @var string|int */ public string|int $PAGE_WIDTH; // smarty include/set var /** @var string */ - public string $TEMPLATE_PATH; + public string $TEMPLATE_PATH = ''; /** @var string */ - public string $TEMPLATE_NAME; + public string $TEMPLATE_NAME = ''; /** @var string */ - public string $INC_TEMPLATE_NAME; + public string $INC_TEMPLATE_NAME = ''; /** @var string */ - public string $JS_TEMPLATE_NAME; + public string $JS_TEMPLATE_NAME = ''; /** @var string */ - public string $CSS_TEMPLATE_NAME; + public string $CSS_TEMPLATE_NAME = ''; /** @var string|null */ public string|null $TEMPLATE_TRANSLATE; /** @var string|null */ public string|null $JS_TRANSLATE; // core group /** @var string */ - public string $JS_CORE_TEMPLATE_NAME; + public string $JS_CORE_TEMPLATE_NAME = ''; /** @var string */ - public string $CSS_CORE_TEMPLATE_NAME; + public string $CSS_CORE_TEMPLATE_NAME = ''; /** @var string */ - public string $JS_CORE_INCLUDE; + public string $JS_CORE_INCLUDE = ''; /** @var string */ - public string $CSS_CORE_INCLUDE; + public string $CSS_CORE_INCLUDE = ''; // local names /** @var string */ public string $JS_SPECIAL_TEMPLATE_NAME = ''; /** @var string */ public string $CSS_SPECIAL_TEMPLATE_NAME = ''; /** @var string */ - public string $JS_INCLUDE; + public string $JS_INCLUDE = ''; /** @var string */ - public string $CSS_INCLUDE; + public string $CSS_INCLUDE = ''; /** @var string */ - public string $JS_SPECIAL_INCLUDE; + public string $JS_SPECIAL_INCLUDE = ''; /** @var string */ - public string $CSS_SPECIAL_INCLUDE; + public string $CSS_SPECIAL_INCLUDE = ''; /** @var string */ - public string $ADMIN_JAVASCRIPT; + public string $ADMIN_JAVASCRIPT = ''; /** @var string */ - public string $ADMIN_STYLESHEET; + public string $ADMIN_STYLESHEET = ''; /** @var string */ - public string $FRONTEND_JAVASCRIPT; + public string $FRONTEND_JAVASCRIPT = ''; /** @var string */ - public string $FRONTEND_STYLESHEET; + public string $FRONTEND_STYLESHEET = ''; // other smarty folder vars /** @var string */ - public string $INCLUDES; + public string $INCLUDES = ''; /** @var string */ - public string $JAVASCRIPT; + public string $JAVASCRIPT = ''; /** @var string */ - public string $CSS; + public string $CSS = ''; /** @var string */ - public string $FONT; + public string $FONT = ''; /** @var string */ - public string $PICTURES; + public string $PICTURES = ''; /** @var string */ - public string $CACHE_PICTURES; + public string $CACHE_PICTURES = ''; /** @var string */ - public string $CACHE_PICTURES_ROOT; + public string $CACHE_PICTURES_ROOT = ''; // constructor class, just sets the language stuff /** @@ -373,7 +373,7 @@ class SmartyExtend extends \Smarty // check for template include if ( $this->USE_INCLUDE_TEMPLATE === true && - !$this->TEMPLATE_NAME + empty($this->TEMPLATE_NAME) ) { $this->TEMPLATE_NAME = $this->CONTENT_INCLUDE; // add to cache & compile id @@ -390,7 +390,7 @@ class SmartyExtend extends \Smarty exit('MASTER TEMPLATE: ' . $this->MASTER_TEMPLATE_NAME . ' could not be found'); } if ( - $this->TEMPLATE_NAME && + !empty($this->TEMPLATE_NAME) && !file_exists($this->getTemplateDir()[0] . DIRECTORY_SEPARATOR . $this->TEMPLATE_NAME) ) { exit('INCLUDE TEMPLATE: ' . $this->TEMPLATE_NAME . ' could not be found'); @@ -418,7 +418,12 @@ class SmartyExtend extends \Smarty } } // if we can't find it, dump it - if (!file_exists($this->getTemplateDir()[0] . DIRECTORY_SEPARATOR . $this->TEMPLATE_TRANSLATE)) { + if ( + !file_exists( + $this->getTemplateDir()[0] . DIRECTORY_SEPARATOR + . $this->TEMPLATE_TRANSLATE + ) + ) { $this->TEMPLATE_TRANSLATE = null; } if (empty($this->JS_TRANSLATE)) { diff --git a/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Debug/CoreLibsDebugSupportTest.php b/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Debug/CoreLibsDebugSupportTest.php index f8463233..15e0e9c8 100644 --- a/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Debug/CoreLibsDebugSupportTest.php +++ b/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Debug/CoreLibsDebugSupportTest.php @@ -460,16 +460,18 @@ final class CoreLibsDebugSupportTest extends TestCase * Undocumented function * * @cover ::getCallerFileLine - * @testWith ["/storage/var/www/html/developers/clemens/core_data/php_libraries/trunk/www/vendor/phpunit/phpunit/src/Framework/TestCase.php:1608"] - * @testdox getCallerFileLine check if it returns $expected [$_dataName] + * @testWith ["vendor/phpunit/phpunit/src/Framework/TestCase.php:"] + * @testdox getCallerFileLine check based on regex /[\w\-\/]/vendor/phpunit/phpunit/src/Framework/TestCase.php:\d+ [$_dataName] * * @param string $expected * @return void */ - public function testGetCallerFileLine(string $expected): void + public function testGetCallerFileLine(): void { - $this->assertEquals( - $expected, + // regex prefix with path "/../" and then fixed vendor + \d+ + $regex = "/^\/[\w\-\/]+\/vendor\/phpunit\/phpunit\/src\/Framework\/TestCase.php:\d+$/"; + $this->assertMatchesRegularExpression( + $regex, Support::getCallerFileLine() ); } @@ -518,11 +520,17 @@ final class CoreLibsDebugSupportTest extends TestCase break; case 11: // add one "run" before "runBare" + // array_splice( + // $expected, + // 7, + // 0, + // ['run'] + // ); array_splice( $expected, - 7, 0, - ['run'] + 0, + ['include'] ); $this->assertEquals( $expected, diff --git a/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Logging/CoreLibsLoggingLoggingTest.php b/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Logging/CoreLibsLoggingLoggingTest.php index 177545bc..f98e67d4 100644 --- a/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Logging/CoreLibsLoggingLoggingTest.php +++ b/www/vendor/egrajp/corelibs-composer-all/test/phpunit/Logging/CoreLibsLoggingLoggingTest.php @@ -20,10 +20,15 @@ final class CoreLibsLoggingLoggingTest extends TestCase private const LOG_FOLDER = __DIR__ . DIRECTORY_SEPARATOR . 'log' . DIRECTORY_SEPARATOR; private const REGEX_BASE = "\[[\d\-\s\.:]+\]\s{1}" // date . "\[[\w\.]+(:\d+)?\]\s{1}" // host:port - . "\[[\w+\.\/]+:\d+\]\s{1}" // folder/file + . "\[[\w\-\.\/]+:\d+\]\s{1}" // folder/file . "\[\w+\]\s{1}" // run id . "{[\w\\\\]+(::\w+)?}\s{1}"; // class + public static function tearDownAfterClass(): void + { + array_map('unlink', glob(self::LOG_FOLDER . '*.log')); + } + /** * test set for options BASIC * @@ -791,6 +796,13 @@ final class CoreLibsLoggingLoggingTest extends TestCase ); } + // must test flow: + // init normal + // log -> check file name + // set per date + // log -> check file name + // and same for per_run + // deprecated calls check? }