$list = FS::list_only_files("../tests/", '/^test\\.[0-9a-z\\.\\-_]+\\.php$/i'); } else { preg_match("/[a-z0-9\\.\\-_]+/i", $_GET['run'], $m); $f = $m[0]; if (file_exists("../tests/test.{$f}.php")) { $list[] = "test.{$f}.php"; } } $type = $_GET['run'] == "all" ? "полное" : "только группы " . $_GET['run']; echo <<<HTML \t\tТестирование <b>{$type}</b>. <span style="display:none" id="results"></span> \t\t<br> \t\t<ul style="list-style: none"> HTML; if (count($list) > 0) { $tester = new EMTTester(); $tester->double_test = isset($_GET['double_test']); $tester->set_typoclass("EMTypograph"); foreach ($list as $file) { include "../tests/{$file}"; } $ok = $tester->testit(); $result = $tester->results; } else { $result['error'] = "В каталоге tests тесты не обнаружены"; } if (isset($result['error']) && $result['error']) { $text = $result['error']; } else { if ($ok) { $text = "УСПЕХ. ТЕСТОВ ПРОЙДЕНО: " . $tester->get_test_count() . ".";
$tretsx = array(); $typograf = new EMTypograph(); foreach ($typograf->trets as $tret) { $tretx = $typograf->get_tret($tret); $tretsx[] = work_for_py($tretx); } $zz = str_replace("#####EMT_TRETS#####", implode("", $tretsx), $z); file_put_contents("../EMT.py", $zz); @unlink("../EMT.forpy.php"); echo "Сгенерирован скрипт типографа для Python<br />"; } if ($action == "testpy") { $noecho = 1; require_once "../tools-php/test.php"; $list = FS::list_only_files("../tests/", '/^test\\.[0-9a-z\\.\\-_]+\\.php$/i'); if (count($list) > 0) { $tester = new EMTTester(); $tester->double_test = isset($_GET['double_test']); $tester->set_typoclass("EMTypograph"); foreach ($list as $file) { include "../tests/{$file}"; } //$ok = $tester->testit(); //$result = $tester->results; } else { echo "В каталоге tests тесты не обнаружены"; exit; } file_put_contents("../tests/tests.json", json_encode($tester->list)); echo "Сгенерированы тесты типографа для Python<br />"; }