Strings.findPrefix().phpt 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. /**
  3. * Test: Nette\Utils\Strings::findPrefix()
  4. */
  5. declare(strict_types=1);
  6. use Nette\Utils\Strings;
  7. use Tester\Assert;
  8. require __DIR__ . '/../bootstrap.php';
  9. Assert::same('', Strings::findPrefix(["\xC0\x80", "\xC1\x80"]));
  10. Assert::same('', Strings::findPrefix(["\xC0\x80", "\xC0\x81"]));
  11. Assert::same('', Strings::findPrefix(["\xC0\x80\x80", "\xC0\x80\x81"]));
  12. Assert::same('', Strings::findPrefix(["\xC0\x80\x80\x80", "\xC0\x80\x80\x81"]));
  13. Assert::same('', Strings::findPrefix(['', '']));
  14. Assert::same('', Strings::findPrefix(['a', '']));
  15. Assert::same('', Strings::findPrefix(['', 'b']));
  16. Assert::same('', Strings::findPrefix(['a', 'b']));
  17. Assert::same('a', Strings::findPrefix(['a', 'a']));
  18. Assert::same('a', Strings::findPrefix(['aa', 'a']));
  19. Assert::same('a', Strings::findPrefix(['a', 'ab']));
  20. Assert::same('a', Strings::findPrefix(['aa', 'ab']));
  21. Assert::same('ab', Strings::findPrefix(['ab', 'ab']));
  22. Assert::same("I\u{F1}e", Strings::findPrefix(["I\u{F1}e", "I\u{F1}e"]));
  23. Assert::same("I\u{F1}", Strings::findPrefix(["I\u{F1}", "I\u{F1}"]));
  24. Assert::same('I', Strings::findPrefix(["I\u{F2}", "I\u{F1}"]));
  25. Assert::same('I', Strings::findPrefix(["I\u{131}", "I\u{F1}"]));
  26. Assert::same('', Strings::findPrefix(['', '']));
  27. Assert::same('', Strings::findPrefix(['', '', '']));
  28. Assert::same('', Strings::findPrefix(['a', '', '']));
  29. Assert::same('ab', Strings::findPrefix(['ab1', 'ab', 'ab2']));