| 1234567891011121314151617181920212223242526272829303132333435 |
- <?php
- declare(strict_types=1);
- use Nette\Utils\Arrays;
- use Tester\Assert;
- require __DIR__ . '/../bootstrap.php';
- class Test1
- {
- public function fn(...$args)
- {
- return static::class . ' ' . implode(',', $args);
- }
- }
- class Test2 extends Test1
- {
- }
- $list = [new Test1, 'key' => new Test2];
- Assert::same(
- ['Test1 a,b', 'key' => 'Test2 a,b'],
- Arrays::invokeMethod($list, 'fn', 'a', 'b'),
- );
- Assert::same(
- ['Test1 a,b', 'key' => 'Test2 a,b'],
- Arrays::invokeMethod(new ArrayIterator($list), 'fn', 'a', 'b'),
- );
|