FileSystem.readLines.phpt 771 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. /**
  3. * Test: Nette\Utils\FileSystem readLines()
  4. */
  5. declare(strict_types=1);
  6. use Nette\Utils\FileSystem;
  7. use Tester\Assert;
  8. require __DIR__ . '/../bootstrap.php';
  9. test('readLines', function () {
  10. FileSystem::write(getTempDir() . '/2/file', "\r\nHello\nWorld");
  11. $lines = FileSystem::readLines(getTempDir() . '/2/file');
  12. Assert::type(Generator::class, $lines);
  13. Assert::same(['', 'Hello', 'World'], iterator_to_array($lines));
  14. $lines = FileSystem::readLines(getTempDir() . '/2/file', stripNewLines: false);
  15. Assert::type(Generator::class, $lines);
  16. Assert::same(["\r\n", "Hello\n", 'World'], iterator_to_array($lines));
  17. });
  18. Assert::exception(
  19. fn() => FileSystem::readLines('missing'),
  20. Nette\IOException::class,
  21. "Unable to open file 'missing'.%A%",
  22. );