PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'handle_pear_error'); function handle_pear_error($error_obj) { print '<pre><b>PEAR-Error</b><br />'; echo $error_obj->getMessage() . ': ' . $error_obj->getUserinfo(); print '</pre>'; } MDB2::loadFile('Date'); foreach ($testcases as $testcase) { include_once $testcase . '.php'; } $database = 'driver_test'; $testmethods = isset($_POST['testmethods']) ? $_POST['testmethods'] : null; if (!is_array($testmethods)) { foreach ($testcases as $testcase) { $testmethods[$testcase] = array_flip(getTests($testcase)); } } ?> <html> <head> <title>MDB2 Tests</title> <link href="tests.css" rel="stylesheet" type="text/css"> </head> <body> <?php foreach ($dbarray as $db) { $dsn = $db['dsn']; $options = isset($db['options']) ? $db['options'] : null; $display_dsn = $dsn['phptype'] . "://" . $dsn['username'] . ":" . $dsn['password'] . "@" . $dsn['hostspec'] . "/" . $database; echo "<div class=\"test\">\n";
/** * Parses recursively a folder to search for tests. * On the way it creates $this->_suites and $this->_folders. * * @param string $dir folder path * @return int folder id or 0 if there are no subfolders with suites */ private function _parseFolder($path) { $items = scandir($path); $folderId = $this->_getNextFolderId(); $folder = array('path' => $path); // use reference because we might update suites and subfolders components later on $this->_folders[$folderId] =& $folder; $suites = array(); $subfolders = array(); // parse the folders contentes foreach ($items as $item) { $itemPath = $path . '/' . $item; // if is dir and is not hidden nor . or .. if (is_dir($itemPath) && substr($item, 0, 1) !== '.') { // filter the folder through exludes $descend = true; foreach ($this->_exclude as $pattern) { if (preg_match($pattern, $item)) { $descend = false; break; } } // descend recursively into folder if not excluded if ($descend) { $subfolderId = $this->_parseFolder($itemPath, $this->_exclude); if ($subfolderId) { $subfolders[] = $subfolderId; } } } //echo $itemPath; //die(); // if is file and ends with test suffix if (is_file($itemPath)) { //&& (substr($itemPath, -(strlen($this->_testSuiteSuffix))) == $this->_testSuiteSuffix)) { $tests = getTests($itemPath); if ($tests) { $suiteId = $this->_getNextSuiteId(); $suite = array('path' => $itemPath, 'tests' => $tests); $this->_suites[$suiteId] = $suite; $this->_suitePathToId[$itemPath] = $suiteId; $suites[] = $suiteId; } } } // update the suites and subfolders components if (count($suites)) { $folder['suites'] = $suites; } if (count($subfolders)) { $folder['subfolders'] = $subfolders; } if (isset($folder['suites']) || isset($folder['subfolders'])) { return $folderId; } else { unset($this->_folders[$folderId]); return 0; } }
if (defined('DIRECTORY_SEPARATOR') && DIRECTORY_SEPARATOR == "\\") { define('PATH_SEPARATOR', ';'); } else { define('PATH_SEPARATOR', ':'); } } ini_set('include_path', '..' . PATH_SEPARATOR . ini_get('include_path')); require_once 'PHPUnit.php'; require_once 'test_setup.php'; require_once 'testUtils.php'; $output = ''; foreach ($testcases as $testcase) { include_once $testcase . '.php'; $output .= '<fieldset>' . "\n"; $output .= '<legend><input type="checkbox" id="selectAll_' . $testcase . '" onclick="return checkAll(\'' . $testcase . '\');" /> <b>TestCase : ' . $testcase . '</b></legend>' . "\n"; $testmethods[$testcase] = getTests($testcase); foreach ($testmethods[$testcase] as $method) { $output .= testCheck($testcase, $method); } $output .= "</fieldset><br />\n\n"; $output .= "<input name=\"submit\" type=\"submit\"><br /> <br />\n\n"; } ?> <html> <head> <title>MDB2 Tests</title> <link href="tests.css" rel="stylesheet" type="text/css"> <script language="javascript" type="text/javascript"> <!-- function checkAll(testcase) {
</fieldset> <fieldset> <button type="reset">reset</button> <button type="submit">submit</button> </fieldset> </form> </div>'; } break; case "individual": break; } break; case "list": default: $tests = getTests(); if (count($tests) > 0) { $pageBody .= ' <table class="fancy"> <thead> <tr> <th>#</th> <th>type</th> <th>date</th> <th>most junior class</th> <th>most senior class</th> <th>action</th> </tr> </thead> <tbody>'; $count = 1;