/** * Tests the extension filter with multiple allowed file extensions. * * @return void */ public function testFileExtensionFilterWithMultipleExtensions() { $it = new DirectoryIterator(dirname(__FILE__) . '/../_code'); $filter = new PHP_Depend_Input_ExtensionFilter(array('txt', 'inc')); $result = array(); foreach ($it as $file) { if ($filter->accept($file)) { $result[] = $file->getFilename(); } } sort($result); $expected = array('function.inc', 'invalid_class_with_code.txt', 'invalid_function1.txt', 'invalid_function2.txt', 'not_closed_class.txt', 'not_closed_function.txt'); $this->assertEquals($expected, $result); }
/** * Creates an array with those files that were acceptable for the extension * filter. * * @param array(string) $includes The file extensions * * @return array(string) */ protected function createFilteredFileList(array $includes) { $filter = new PHP_Depend_Input_ExtensionFilter($includes); $files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator(self::createCodeResourceUriForTest())); $actual = array(); foreach ($files as $file) { if ($filter->accept($file, $file) && $file->isFile() && false === stripos($file->getPathname(), '.svn')) { $actual[] = $file->getFilename(); } } sort($actual); return $actual; }