echo "<option id=\"" . $strOneFile . "\" " . (getPost("testname") == $strOneFile ? "selected" : "") . " >" . $strOneFile . "</option>"; } echo "</select>"; echo "<input type=\"hidden\" name=\"debugfile\" value=\"autotest.php\" />"; echo "<input type=\"hidden\" name=\"dotest\" value=\"1\" />"; echo "<input type=\"submit\" value=\"Run test\" />"; echo "</form>"; if (issetPost("dotest")) { $intStart = time(); $strFilename = getPost("testname"); $arrFiles = class_resourceloader::getInstance()->getFolderContent("/tests", array(".php")); $strSearched = array_search($strFilename, $arrFiles); if ($strSearched !== false && substr($strFilename, 0, 5) == "test_" && substr($strFilename, -4) == ".php") { echo " \n\nfound test-script " . $strFilename . " \n"; include_once _realpath_ . $strSearched; $arrClasses = get_php_classes(file_get_contents(_realpath_ . $strSearched)); foreach ($arrClasses as $strClassName) { if (uniStripos($strClassName, "test") !== false) { $objTest = new $strClassName(); if ($objTest instanceof class_testbase) { echo " invoking kajonaTestTrigger() on instance of " . $strClassName . "\n\n\n\n"; $objTest->kajonaTestTrigger(); } } } class_assertions::printStatistics(); echo "time needed: " . round((time() - $intStart) / 60, 3) . " min\n\n\n"; } } function get_php_classes($php_code) {
function file_get_php_classes($filepath, $onlypublic = true) { $php_code = file_get_contents($filepath); $classes = get_php_classes($php_code, $onlypublic); return $classes; }
function file_get_php_classes($path) { $code = file_get_contents($path); $classes = get_php_classes($code); return $classes; }