_fixtureManager = $manager; } /** * Adds all the files in a directory to the test suite. Does not recurse through directories. * * @param string $directory The directory to add tests from. * @return void */ public function addTestDirectory($directory = '.') { $files = new DirectoryIterator($directory); foreach ($files as $file) { if (!$file->isFile()) { continue; } $file = $file->getRealPath(); $this->addTestFile($file); } } /** * Recursively adds all the files in a directory to the test suite. * * @param string $directory The directory subtree to add tests from. * @return void */ public function addTestDirectoryRecursive($directory = '.') { $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory)); foreach ($files as $file) { if (!$file->isFile()) { continue; } $file = $file->getRealPath(); $this->addTestFile($file); } } /** * Method that is called before the tests of this test suite are run. * It will load fixtures accordingly for each test. * * @return void * @access protected */ protected function setUp() { parent::setUp(); if (!$this->_fixtureManager) { return; } $classes = array(); foreach ($this->getIterator() as $test) { $this->_fixtureManager->fixturize($test); $test->fixtureManager = $this->_fixtureManager; } } /** * Method that is called after all the tests of this test suite are run. * * @return void * @access protected */ protected function tearDown() { parent::tearDown(); if ($this->_fixtureManager) { $this->_fixtureManager->shutDown(); } } }