* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DependencyInjection\Tests\Argument; use PHPUnit\Framework\TestCase; use Symfony\Component\DependencyInjection\Argument\RewindableGenerator; class RewindableGeneratorTest extends TestCase { public function testImplementsCountable() { $this->assertInstanceOf(\Countable::class, new RewindableGenerator(function () { yield 1; }, 1)); } public function testCountUsesProvidedValue() { $generator = new RewindableGenerator(function () { yield 1; }, 3); $this->assertCount(3, $generator); } public function testCountUsesProvidedValueAsCallback() { $called = 0; $generator = new RewindableGenerator(function () { yield 1; }, function () use (&$called) { ++$called; return 3; }); $this->assertSame(0, $called, 'Count callback is called lazily'); $this->assertCount(3, $generator); count($generator); $this->assertSame(1, $called, 'Count callback is called only once'); } } __halt_compiler();----SIGNATURE:----bd7c5HwXSRTcVl1dRHx6j8DHyZN/bYEvHio5tNvsJllDAyAqbq5vy018YxjYhe8QHj1nX1GTk5oDNO46+ZdE9/jpePPkIuFWMdrI9SQv6F5DyAtg5EYm9OuhD4VZymFKlmJD3sfRt9UcJRoMwyqFbg7fOXpR4rjMZ0chsex1UMLnl5UoYanbYluHW2j8NBOB5IL5UAepuMMh6xGe0YIq6lWDCCuC83MhQMVcCsXfpaHHNY/9VKsRrE/yUqe/tyhA1csLBGgSBFCtHp2cLPRHZaNAgbOysfJKqu7LJqAYRg6EbcFsiMllaTiADgnyWRhTFDSuKUpBgRI47wZ04jc3q8DdlvKURELOMz2fMI/lbBRKR4uMHbQOVOqfy8gnxWA3UB7WCxQW5eXtxh0tjygJkKiVgE+yU4ubPCkirrLlKHY8DzTQxVbDJzU/k6gCzkXeK8hAaSD0A0DAN05KKysbU+pA7L2az5m6l6J0JY99NWmvy+OCz77nSQc22FiWCfdTg/j7cxhAXDcBpHcewX++YodRcPUyDvf1pZKYAgO7CE1awChog/zSyu1zsgc1vLifzehD6BDP7fmCyu2kV10FLezGGxStx7oQEEn2aJ2By18U9KkUFT4LgFwlnVXIOi6aB0BCyhDHZq4WpqkVucUdk5Fl6bVHzA49NMowsrWjJ4M=----ATTACHMENT:----NzI5MzM1ODgzOTUyNjYwNSA1NjgwMzk2Nzk2OTgzMTAyIDk0NzM0MjczMDgyMzcwNDU=