3 namespace Drupal\Tests\Component\FileSystem;
5 use Drupal\Component\FileSystem\RegexDirectoryIterator;
6 use org\bovigo\vfs\vfsStream;
7 use PHPUnit\Framework\TestCase;
10 * @coversDefaultClass \Drupal\Component\FileSystem\RegexDirectoryIterator
13 class RegexDirectoryIteratorTest extends TestCase {
17 * @dataProvider providerTestRegexDirectoryIterator
19 public function testRegexDirectoryIterator(array $directory, $regex, array $expected) {
20 vfsStream::setup('root', NULL, $directory);
21 $iterator = new RegexDirectoryIterator(vfsStream::url('root'), $regex);
23 // Create an array of filenames to assert against.
24 $file_list = array_map(function (\SplFileInfo $file) {
25 return $file->getFilename();
26 }, array_values(iterator_to_array($iterator)));
28 $this->assertSame($expected, $file_list);
32 * Provider for self::testRegexDirectoryIterator().
34 public function providerTestRegexDirectoryIterator() {
71 // Ensure we don't recurse in directories even if that match the