ini_set('memory_limit', -1); ini_set('include_path', ini_get('include_path') . PATH_SEPARATOR . dirname(__DIR__) . DIRECTORY_SEPARATOR . 'include'); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); require_once 'Setup.class.php'; require_once 'TestSuite.class.php'; require_once 'TestSuiteManager.class.php'; require_once 'TestCaseManager.class.php'; require_once 'LogManager.class.php'; $logger = new LogManager("../log/log.txt", LogManager::DEBUG); $testSuiteManager = new TestSuiteManager(); $testSuiteManager->setLogger($logger); $testCaseManager = new TestCaseManager(); $output = ''; $logViewer = ''; $info = array(); $error = array(); if (isset($_REQUEST['testcases_to_add'])) { if (!empty($_REQUEST['testcases_to_add'])) { $testCasesToAdd = explode(',', $_REQUEST['testcases_to_add']); if (!empty($_REQUEST['testsuite_name'])) { require_once dirname(__FILE__) . '/../include/TestSuite.class.php'; require_once dirname(__FILE__) . '/../include/TestCase.class.php'; try { $testSuite = new TestSuite($_REQUEST['testsuite_name']); try { $populateResult = $testSuiteManager->populateTestSuite($testSuite, $testCasesToAdd); $info = $populateResult['info'];
$output .= " " . $testcase . "\n"; } echo $output; } break; case 'generate': if ($displayHelp) { echo "generate: Generate a testsuite.\nParameters:\n --name : Name of the new testsuite\n --old_testsuite : Name of an old testsuite from which we import the list of testcases\n --testcases : List of indexes of testcases as obtained from \"testcases\" function\n --help or -h : Display this help\n --quiet or -q : Quiet mode\nNB: You can't use both --old_testsuite and --testcases\n"; } else { if (isset($parameters["name"]) && !empty($parameters["name"])) { if (isset($parameters["old_testsuite"]) && !empty($parameters["old_testsuite"]) && !isset($parameters["testcases"])) { $oldTestSuite = new TestSuite($parameters["old_testsuite"]); $testCases = $oldTestSuite->getTestCases(); } elseif (isset($parameters["testcases"]) && !empty($parameters["testcases"]) && !isset($parameters["old_testsuite"])) { $testCasesNumbers = split(",", $parameters["testcases"]); $testCaseManager = new TestCaseManager(); $testCasesList = $testCaseManager->listFileSystem("../testcases"); $testCases = array(); foreach ($testCasesNumbers as $number) { if (isset($testCasesList[$number])) { $testCases[] = $testCasesList[$number]; } else { if (!$quiet) { echo "\"" . $number . "\" is not a valid testcase index, to verify your input, try\n>php tic.php testcases --numbered\n"; } } } } else { echo "You need to use --old_testsuite or --testcases parameters to pass list of testcases, you can't use both\n"; } if (isset($testCases) && !empty($testCases)) {
require_once 'TestCaseManager.class.php'; echo ' <html> <head> <title>FireOpal</title> <link href="include/css/index.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="include/scripts/script.js"></script> </head>'; echo ' <body> <div id="header"> <a href="index.php" class="community"> << Go back</a> </div> <div id="body_skin"> <div><br>'; $testCaseManager = new TestCaseManager(); $fsTestsArray = $testCaseManager->listFileSystem("../testcases"); $fsIterator = $testCaseManager->getFileSystemIterator("../testcases"); foreach ($fsIterator as $entry) { if (!$entry->isDir()) { $testCase = substr($entry->getPathname(), strlen(TestCaseManager::TESTCASES_PATH)); $testCaseString = substr($testCase, 0, strlen($testCase) - 3); echo '<br><span class="testCaseDetailstoggler" onclick="toggle_visibility(\'test_output_' . $testCase . '\'); if (this.innerHTML == \'+\') { this.innerHTML = \'-\'; } else { this.innerHTML = \'+\'; }">+</span><span class="testCaseDetailsTitle">' . $testCaseString . '</span><br/>'; $spanContent = '<span class="testCaseDetail" id="test_output_' . $testCase . '" style="display: none;" >'; $spanContent .= $testCaseManager->rspecPrettyFormat($testCaseString); $spanContent .= '</span>'; echo $spanContent; } } echo ' </div> </div>