Arrays.pick().phpt 591 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. /**
  3. * Test: Nette\Utils\Arrays::pick()
  4. */
  5. declare(strict_types=1);
  6. use Nette\Utils\Arrays;
  7. use Tester\Assert;
  8. require __DIR__ . '/../bootstrap.php';
  9. $arr = [
  10. '' => 'null',
  11. 1 => 'first',
  12. 2 => 'second',
  13. ];
  14. test('Single item', function () use ($arr) {
  15. Assert::same('null', Arrays::pick($arr, ''));
  16. Assert::same('first', Arrays::pick($arr, 1));
  17. Assert::same('x', Arrays::pick($arr, 1, 'x'));
  18. Assert::exception(
  19. fn() => Arrays::pick($arr, 'undefined'),
  20. Nette\InvalidArgumentException::class,
  21. "Missing item 'undefined'.",
  22. );
  23. Assert::same([2 => 'second'], $arr);
  24. });