* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Finder\Tests\Iterator; use Symfony\Component\Finder\Iterator\FilecontentFilterIterator; class FilecontentFilterIteratorTest extends IteratorTestCase { public function testAccept() { $inner = new MockFileListIterator(array('test.txt')); $iterator = new FilecontentFilterIterator($inner, array(), array()); $this->assertIterator(array('test.txt'), $iterator); } public function testDirectory() { $inner = new MockFileListIterator(array('directory')); $iterator = new FilecontentFilterIterator($inner, array('directory'), array()); $this->assertIterator(array(), $iterator); } public function testUnreadableFile() { $inner = new MockFileListIterator(array('file r-')); $iterator = new FilecontentFilterIterator($inner, array('file r-'), array()); $this->assertIterator(array(), $iterator); } /** * @dataProvider getTestFilterData */ public function testFilter(\Iterator $inner, array $matchPatterns, array $noMatchPatterns, array $resultArray) { $iterator = new FilecontentFilterIterator($inner, $matchPatterns, $noMatchPatterns); $this->assertIterator($resultArray, $iterator); } public function getTestFilterData() { $inner = new MockFileListIterator(); $inner[] = new MockSplFileInfo(array( 'name' => 'a.txt', 'contents' => 'Lorem ipsum...', 'type' => 'file', 'mode' => 'r+', ) ); $inner[] = new MockSplFileInfo(array( 'name' => 'b.yml', 'contents' => 'dolor sit...', 'type' => 'file', 'mode' => 'r+', ) ); $inner[] = new MockSplFileInfo(array( 'name' => 'some/other/dir/third.php', 'contents' => 'amet...', 'type' => 'file', 'mode' => 'r+', ) ); $inner[] = new MockSplFileInfo(array( 'name' => 'unreadable-file.txt', 'contents' => false, 'type' => 'file', 'mode' => 'r+', ) ); return array( array($inner, array('.'), array(), array('a.txt', 'b.yml', 'some/other/dir/third.php')), array($inner, array('ipsum'), array(), array('a.txt')), array($inner, array('i', 'amet'), array('Lorem', 'amet'), array('b.yml')), ); } } __halt_compiler();----SIGNATURE:----idO9lmoVtLgBavNtUKHKjWI5FDfMp3N6g92yHbfly4ghGRQW/70rX1qwFE5Klb0KeumTMCNWOWilqL/Vs0LgCfz+1HNctZP2hF1Ni4PxucHjBCgUzqwBsWR5GDTQo4nXSC8WS+9WqIbshI2xvZdvlIuhEKA5FGl14cK2qTtYl2ShtFmUcvpgeqWQQL/UIbZ8xZ5xhXHiOYaTbgzwLaR2OZcig38wxiA5vqZOR2YVRhnJgfuOA3+r0g+VHjBjTkUAciB8kRZWpZn0N4wAUxwygamNWYwjqPhItlYUSfEeM9ng55ipYC2g5zexON40wtxj3AE4xWmR2zoiSt9dukPFN7PwlLvTWjJDEBkfnUMTW1zYvQrp7wje7OsLALFVUtI1yYjBeaXhOq37Q70Hon2va+drsnBi6dP36DWRRfW+rtqcF0MZQSNSyn0rkkhJdbvgKbPHo2AaDqnDBp8Pl+C77ZUQFgZLvbUVWY2QlffxhqWKkePmzrDQoy1OozjMZ1KUJAdc5NW/e3eILGu2FgWg/qp1englrgzCpzEwFB5FRsnJNkF2QKcySNK8V3sazY1l1OzFtqTwEgcKKK2Z3AJe4luQVXslSd1Ma1ozU1gyzNvtd97CUKsLO0unq9r/uBKzSZ1bcni8lD10ZpefSy7BXFsjO1pVXFTwT+2va62ddjI=----ATTACHMENT:----NzU1MDI3MTUzMTkxMDA3NCAxODg4NDc3ODM3OTA2OTc3IDc2MTEzOTk3NzQ0MTIwOTE=