<?php
declare(strict_types=1);
namespace think {class Config {public static $driver='mysql';public static function get($key){return self::$driver;}}}
namespace {
$root=$argv[1]??'';require $root.'/application/p/logic/DateMenu.php';$r=new ReflectionClass(\app\p\logic\DateMenu::class);if(!$r->hasMethod('normalizeStaffDiningTime')){echo '{"assertions":1,"failures":["missing-helper"],"database_operations":0}',PHP_EOL;exit(1);}$m=$r->getMethod('normalizeStaffDiningTime');$m->setAccessible(true);$obj=$r->newInstanceWithoutConstructor();$checks=0;$failed=[];$cases=[['2026-10-10 12:34:56.000000','2026-10-10 12:34:56'],['2024-02-29 00:00:00.0','2024-02-29 00:00:00'],['2026-10-10 12:34:56','2026-10-10 12:34:56'],['2026-10-10 12:34:56.000001','2026-10-10 12:34:56.000001'],['2026-02-31 12:34:56.000000','2026-02-31 12:34:56.000000'],['2026-10-10 24:34:56.000000','2026-10-10 24:34:56.000000'],['2026-10-10 12:60:00.000000','2026-10-10 12:60:00.000000'],['2026-10-10 12:34:60.000000','2026-10-10 12:34:60.000000'],['0000-00-00 00:00:00.000000','0000-00-00 00:00:00.000000'],['0999-01-01 00:00:00.000000','0999-01-01 00:00:00.000000'],['2026-10-10 12:34:56.0000000','2026-10-10 12:34:56.0000000'],[null,null],['',''],[0,0],[0.0,0.0],[[],[]],['123.00','123.00']];
foreach(['mysql','app\\cores\\database\\Dm'] as $driver){\think\Config::$driver=$driver;foreach($cases as $i=>[$value,$dmExpected]){$checks++;$want=$driver==='mysql'?$value:$dmExpected;if($m->invoke($obj,$value)!==$want){$failed[]=$driver.'.'.$i;}}}
echo json_encode(['assertions'=>$checks,'failures'=>$failed,'database_operations'=>0]),PHP_EOL;exit($failed?1:0);
}
