* * 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; /** * @author Alex Bogomazov * * @group legacy */ class FilterIteratorTest extends RealIteratorTestCase { public function testFilterFilesystemIterators() { $i = new \FilesystemIterator($this->toAbsolute()); // it is expected that there are test.py test.php in the tmpDir $i = $this->getMockForAbstractClass('Symfony\Component\Finder\Iterator\FilterIterator', array($i)); $i->expects($this->any()) ->method('accept') ->will($this->returnCallback(function () use ($i) { return (bool) preg_match('/\.php/', (string) $i->current()); }) ); $c = 0; foreach ($i as $item) { ++$c; } $this->assertEquals(1, $c); $i->rewind(); $c = 0; foreach ($i as $item) { ++$c; } // This would fail in php older than 5.5.23/5.6.7 with \FilterIterator // but works with Symfony\Component\Finder\Iterator\FilterIterator // see https://bugs.php.net/68557 $this->assertEquals(1, $c); } } __halt_compiler();----SIGNATURE:----tSpF3qibxWEALzawUFfpElZ4MZzapnKeH+dHgClb725kLrgHFpWQRYM1oQS5RMIgvXaFK/dcTaA+bYV2H8VdXg/ZeIyIQ/TWRt2/9w5dgpApqC1XM1ukVXSsB581qNWmA07dNAMIuL6YezsbBwbeqxVnhw4AHa0YNHRwEkZhdBcULNYIQ545Jwt+aEI/ynCvyCfoR3uSP+vLpd5Q3ZXb8boTkmQThJ9AEWqKh5dLj0H2GgEMTO+T8A1CEFKrslhnCduI3ggxDowFjHba9Xf2+hCaU097zuJUdCnETL3g7/o8AWZvw37OYfHvdM+IJfyXPUFUW5KkX5nU5JfuG51DRTf6q5EufZGUxE2ge35UfDiYIlID3JhXdSLJARs+WlDehhGwJgGORtrSeeGgt6KWcrPGW+eH2SshE4E2P1OW9j+SvpSUUpxev97HefDnqM/3MPSs4c+lqKWMhahmP2LBO5cHapwXiYjAFlcnQV5vE8z1vLQdcqiqPRNJDnvl9v/4KF4VD66dcafFXjIGADNzx3keuLXX4UgSwdrbj3pUm/z/ydfuDpvHMDxKCAwiaIm19C2EKHUDzinrsOC0ekuAdO7LoktDJPfUXpPO+O2y6eCi8qHpDPk6Fh9241zCPgZKwFNGswt00T00chgIeZDZoMRFdotmf+YFxzEBR9mq/3Q=----ATTACHMENT:----MjkzNzcxMTY0NTUyMjc4IDM4OTIzNDI1Mjc1MzQxNyA4MjQwOTA3MzEwNjAwOTE4