public static function suite() { $suite = new SimpleContactForm_AllTests('SimpleContactForm Tests'); $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array(dirname(__FILE__) . '/cases')); $suite->addTestFiles($testCollector->collectTests()); return $suite; }
public static function suite() { $collector = new PHPUnit_Runner_IncludePathTestCollector(array(dirname(__FILE__))); $suite = new PHPUnit_Framework_TestSuite('Application'); $suite->addTestFiles($collector->collectTests()); return $suite; }
public static function suite() { $suite = new RecordRelations_AllTests('RecordRelations Tests'); $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array(dirname(__FILE__) . '/cases')); $suite->addTestFiles($testCollector->collectTests()); return $suite; }
public static function suite() { $suite = new UserProfiles_AllTests('UserProfiles Tests'); $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array(dirname(__FILE__) . '/integration')); $suite->addTestFiles($testCollector->collectTests()); return $suite; }
public static function suite() { $class_name = substr(basename(__FILE__), 0, -4); $test_folder = strtolower(substr($class_name, 0, -9)); $suite = new ExamplesTestSuite(AkInflector::titleize($class_name)); $path = dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR . $test_folder; $directory = new PHPUnit_Runner_IncludePathTestCollector(array($path)); $suite->addTestFiles($directory->collectTests()); return $suite; }
/** * Returns the Test corresponding to the given suite. * This is a template method, subclasses override * the runFailed() and clearStatus() methods. * * @param string $suiteClassName * @param string $suiteClassFile * @param boolean $syntaxCheck * @return PHPUnit_Framework_Test */ public function getTest($suiteClassName, $suiteClassFile = '', $syntaxCheck = FALSE) { if (is_dir($suiteClassName) && !is_file($suiteClassName . '.php') && empty($suiteClassFile)) { $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array($suiteClassName)); $suite = new PHPUnit_Framework_TestSuite($suiteClassName); $suite->addTestFiles($testCollector->collectTests(), $syntaxCheck); return $suite; } try { $testClass = $this->loadSuiteClass($suiteClassName, $suiteClassFile, $syntaxCheck); } catch (Exception $e) { $this->runFailed($e->getMessage()); return NULL; } try { $suiteMethod = $testClass->getMethod(self::SUITE_METHODNAME); if (!$suiteMethod->isStatic()) { $this->runFailed('suite() method must be static.'); return NULL; } try { $test = $suiteMethod->invoke(NULL, $testClass->getName()); } catch (ReflectionException $e) { $this->runFailed(sprintf("Failed to invoke suite() method.\n%s", $e->getMessage())); return NULL; } } catch (ReflectionException $e) { try { $test = new PHPUnit_Framework_TestSuite($testClass); } catch (InvalidArgumentException $e) { $test = new PHPUnit_Framework_TestSuite(); $test->setName($suiteClassName); } } $this->clearStatus(); return $test; }
/** * @param DOMElement $testSuiteNode * @param boolean $syntaxCheck * @return PHPUnit_Framework_TestSuite * @since Method available since Release 3.4.0 */ protected function getTestSuite(DOMElement $testSuiteNode, $syntaxCheck) { if ($testSuiteNode->hasAttribute('name')) { $suite = new PHPUnit_Framework_TestSuite( (string)$testSuiteNode->getAttribute('name') ); } else { $suite = new PHPUnit_Framework_TestSuite; } foreach ($testSuiteNode->getElementsByTagName('directory') as $directoryNode) { $directory = (string)$directoryNode->nodeValue; if (empty($directory)) { continue; } if ($directoryNode->hasAttribute('prefix')) { $prefix = (string)$directoryNode->getAttribute('prefix'); } else { $prefix = ''; } if ($directoryNode->hasAttribute('suffix')) { $suffix = (string)$directoryNode->getAttribute('suffix'); } else { $suffix = 'Test.php'; } $testCollector = new PHPUnit_Runner_IncludePathTestCollector( array($this->toAbsolutePath($directory)), $suffix, $prefix ); $suite->addTestFiles($testCollector->collectTests(), $syntaxCheck); } foreach ($testSuiteNode->getElementsByTagName('file') as $fileNode) { $file = (string)$fileNode->nodeValue; if (empty($file)) { continue; } $suite->addTestFile($file, $syntaxCheck); } return $suite; }
protected function getModuleTestSuite($module, $testFile = '') { $moduleList = $this->epInfo->getModulesList(); $topsuite = new PHPUnit_Framework_TestSuite(); if (isset($moduleList[$module])) { $type = ($this->testType ? '.' . $this->testType : '') . '.pu.php'; $suite = new JelixTestSuite($module); if ($this->version36) { if ($testFile) { $suite->addTestFile($moduleList[$module] . 'tests/' . $testFile); } else { $fileIteratorFacade = new File_Iterator_Facade(); $files = $fileIteratorFacade->getFilesAsArray($moduleList[$module], $type); $suite->addTestFiles($files); } } else { $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array($moduleList[$module]), $type); $suite->addTestFiles($testCollector->collectTests()); } if (count($suite->tests()) > 0) { $topsuite->addTestSuite($suite); } } return $topsuite; }
/** * Returns the test suite configuration. * * @return PHPUnit_Framework_TestSuite * @since Method available since Release 3.2.1 */ public function getTestSuiteConfiguration() { $testSuiteNode = $this->xpath->query('testsuite'); if ($testSuiteNode->length > 0) { $testSuiteNode = $testSuiteNode->item(0); if ($testSuiteNode->hasAttribute('name')) { $suite = new PHPUnit_Framework_TestSuite((string) $testSuiteNode->getAttribute('name')); } else { $suite = new PHPUnit_Framework_TestSuite(); } foreach ($this->xpath->query('testsuite/directory') as $directoryNode) { if ($directoryNode->hasAttribute('suffix')) { $suffix = (string) $directoryNode->getAttribute('suffix'); } else { $suffix = 'Test.php'; } $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array((string) $directoryNode->nodeValue), $suffix); $suite->addTestFiles($testCollector->collectTests()); } foreach ($this->xpath->query('testsuite/file') as $fileNode) { $suite->addTestFile((string) $fileNode->nodeValue); } return $suite; } }
/** * Retorna um PHPUnit_Util_FilterIterator que contém as regras de inclusão * de testes do diretório definido por $_fir. * * @return PHPUnit_Util_FilterIterator */ protected function _collectTests() { $testCollector = new PHPUnit_Runner_IncludePathTestCollector($this->_directory); return $testCollector->collectTests(); }
public static function main() { global $isLocal; // check number of arguments $isLocal = !isset($_SERVER['HTTP_USER_AGENT']); $arguments = array('listGroups' => FALSE, 'loader' => NULL, 'useDefaultConfiguration' => TRUE); $loader = NULL; $startPos = 1; $canCountTest = true; global $config_file; if ($isLocal && $_SERVER['argv'][1] == "-config" || !$isLocal && strcmp($config_file, "") != 0 && strcmp($config_file, "/*config_xml*/") != 0) { // check if configuration specified $canCountTest = false; $path = $isLocal ? $_SERVER['argv'][2] : $config_file; //$_GET["config_xml"]; $arguments['configuration'] = $path; $startPos = 3; $configuration = PHPUnit_Util_Configuration::getInstance($path); $phpunit = $configuration->getPHPUnitConfiguration(); if (isset($phpunit['testSuiteLoaderClass'])) { if (isset($phpunit['testSuiteLoaderFile'])) { $file = $phpunit['testSuiteLoaderFile']; } else { $file = ''; } $command = new PHPUnit_TextUI_Command(); $loader = $command->handleLoader($phpunit['testSuiteLoaderClass'], $file); $arguments['loader'] = $loader; } $configuration->handlePHPConfiguration(); $phpunitConfiguration = $configuration->getPHPUnitConfiguration(); if (isset($phpunitConfiguration['bootstrap'])) { PHPUnit_Util_Fileloader::load($phpunitConfiguration['bootstrap']); } $browsers = $configuration->getSeleniumBrowserConfiguration(); if (!empty($browsers)) { require_once 'PHPUnit/Extensions/SeleniumTestCase.php'; PHPUnit_Extensions_SeleniumTestCase::$browsers = $browsers; } } if ($isLocal && $_SERVER['argv'][$startPos] == "-group" || !$isLocal && isset($_GET["groups"])) { $arguments['groups'] = explode(',', $isLocal ? $_SERVER['argv'][$startPos + 1] : $_GET["groups"]); $startPos += 2; } if ($isLocal && $_SERVER['argv'][$startPos] == "-exclude-group" || !$isLocal && isset($_GET["exclude_groups"])) { $arguments['excludeGroups'] = explode(',', $isLocal ? $_SERVER['argv'][$startPos + 1] : $_GET["exclude_groups"]); $startPos += 2; } $check = $isLocal ? $_SERVER['argv'][$startPos] : $_GET["mode"]; if ($check == "c") { $suiteClassName = $isLocal ? $_SERVER['argv'][$startPos + 1] : $_GET["class"]; $suiteClassFile = $isLocal ? $_SERVER['argv'][$startPos + 2] : $_GET["file"]; try { // $testClass = (); if ($loader == NULL) { $loader = new PHPUnit_Runner_StandardTestSuiteLoader(); } $testClass = $loader->load($suiteClassName, $suiteClassFile, FALSE); } catch (Exception $e) { myExceptionHandler($e); return; } try { // if class is a suite $suiteMethod = $testClass->getMethod('suite'); if ($suiteMethod->isAbstract() || !$suiteMethod->isPublic() || !$suiteMethod->isStatic()) { return; } try { // ?? suite does not have testName argument $test = $suiteMethod->invoke(NULL, $testClass->getName()); $test->setName($suiteClassName); if ($canCountTest) { print traceCommand("testCount", "count", (string) sizeof($test)); } self::runTest($test, $suiteClassFile, $arguments); } catch (ReflectionException $e) { myExceptionHandler($e); return; } } catch (ReflectionException $e) { $test = new PHPUnit_Framework_TestSuite($testClass); if ($canCountTest) { print traceCommand("testCount", "count", (string) sizeof($test)); } self::runTest($test, $suiteClassFile, $arguments); } } else { if ($check == "d") { // if run directory // in remote case we put this script in the test directory $suiteDirName = $isLocal ? $_SERVER['argv'][$startPos + 1] : dirname(__FILE__); if (is_dir($suiteDirName) && !is_file($suiteDirName . '.php')) { $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array($suiteDirName)); // $test = new PHPUnit_Framework_TestSuite($suiteDirName); $filenames = $testCollector->collectTests(); $number = 0; $alltests = array(); foreach ($filenames as $filename) { $tests = self::collectTestsFromFile($filename); foreach ($tests as $currenttest) { $number += sizeof($currenttest); $alltests[] = $currenttest; $alltests[] = $filename; } } if ($canCountTest) { print traceCommand("testCount", "count", (string) $number); } for ($i = 0; $i < count($alltests); $i += 2) { self::runTest($alltests[$i], $alltests[$i + 1], $arguments); } return; } } else { if ($check == 'f') { // if run all in file $filename = $isLocal ? $_SERVER['argv'][$startPos + 1] : $_GET["file"]; $tests = self::collectTestsFromFile($filename); $test = new PHPUnit_Framework_TestSuite(); $number = 0; foreach ($tests as $currenttest) { if ($tests) { $test->addTest($currenttest); $number += sizeof($currenttest); } } if ($canCountTest) { print traceCommand("testCount", "count", $number); } foreach ($tests as $currentTest) { self::runTest($currentTest, $filename, $arguments); } return; } else { if ($check == 'm') { $suiteMethodName = $isLocal ? $_SERVER['argv'][$startPos + 1] : $_GET["method"]; $suiteClassName = $isLocal ? $_SERVER['argv'][$startPos + 2] : $_GET["class"]; $suiteClassFile = $isLocal ? $_SERVER['argv'][$startPos + 3] : $_GET["file"]; try { $testClass = new PHPUnit_Runner_StandardTestSuiteLoader(); $testClass = $testClass->load($suiteClassName, $suiteClassFile, FALSE); } catch (Exception $e) { myExceptionHandler($e); return; } try { // if class is a suite $suiteMethod = $testClass->getMethod($suiteMethodName); if ($suiteMethodName == 'suite') { if ($suiteMethod->isAbstract() || !$suiteMethod->isPublic() || !$suiteMethod->isStatic()) { return; } try { $test = $suiteMethod->invoke(NULL, $testClass->getName()); $test->setName($suiteClassName); if ($canCountTest) { print traceCommand("testCount", "count", (string) sizeof($test)); } self::runTest($test, $suiteClassFile, $arguments); } catch (ReflectionException $e) { myExceptionHandler($e); return; } } else { $test = PHPUnit_Framework_TestSuite::createTest($testClass, $suiteMethodName); $testSuite = new PHPUnit_Framework_TestSuite(); $testSuite->addTest($test); $testSuite->setName($suiteClassName); if ($canCountTest) { print traceCommand("testCount", "count", (string) sizeof($test)); } self::runTest($testSuite, $suiteClassFile, $arguments); } } catch (ReflectionException $e) { myExceptionHandler($e); return; } } else { if ($check == 'x') { $testSuite = $configuration->getTestSuiteConfiguration(); self::runTest($testSuite, "", $arguments); } } } } } }
protected function getModuleTestSuite($module) { $appInstaller = new jInstallerApplication(); $ep = $appInstaller->getEntryPointInfo($this->entryPoint); $moduleList = $ep->getModulesList(); $topsuite = new PHPUnit_Framework_TestSuite(); if (isset($moduleList[$module])) { $type = ($this->testType ? '.' . $this->testType : '') . '.pu.php'; $suite = new JelixTestSuite($module); $testCollector = new PHPUnit_Runner_IncludePathTestCollector(array($moduleList[$module]), $type); $suite->addTestFiles($testCollector->collectTests()); if (count($suite->tests()) > 0) { $topsuite->addTestSuite($suite); } } return $topsuite; }