示例#1
0
    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)
{
示例#2
0
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;
}