Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php$TEST_TOOLS = dirname(__FILE__);if(isset($_GET['sr'])){if(($selenium_resource=realpath($TEST_TOOLS.'/selenium/'.$_GET['sr']))!==false)echo file_get_contents($selenium_resource);exit;}require_once($TEST_TOOLS.'/simpletest/unit_tester.php');require_once($TEST_TOOLS.'/simpletest/web_tester.php');require_once($TEST_TOOLS.'/simpletest/mock_objects.php');require_once($TEST_TOOLS.'/simpletest/reporter.php');require_once($TEST_TOOLS.'/selenium/php/selenium.php');class PradoFunctionalTester{private $_name;private $_basePath;private $_selenium;public function __construct($basePath,$selenium='',$name='All Tests'){$this->_name=$name;if($basePath==='' || ($this->_basePath=realpath($basePath))===false)throw new Exception('Invalid base path '.$basePath);$this->_basePath=strtr($this->_basePath,'\\','/');$this->_selenium = $selenium.'selenium/';}public function run($simpleReporter){$server=SimpleSeleniumProxyServer::getInstance(dirname(__FILE__));//, '', $this->_selenium);$groupTest=new GroupTest($this->_name);$this->collectTestFiles($groupTest,$this->_basePath);$groupTest->run($simpleReporter);$server->handleRequest();}protected function collectTestFiles($groupTest,$basePath){$folder=@opendir($basePath);while($entry=@readdir($folder)){$fullPath=strtr($basePath.'/'.$entry,'\\','/');if(is_file($fullPath) && $this->isValidFile($entry))$groupTest->addTestFile($fullPath);else if($entry[0]!=='.')$this->collectTestFiles($groupTest,$fullPath);}@closedir($folder);}protected function isValidFile($entry){return preg_match('/\w+\.php$/',$entry);}}?>