diff options
Diffstat (limited to 'vendor/maennchen/zipstream-php/test/Assertions.php')
-rw-r--r-- | vendor/maennchen/zipstream-php/test/Assertions.php | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/vendor/maennchen/zipstream-php/test/Assertions.php b/vendor/maennchen/zipstream-php/test/Assertions.php new file mode 100644 index 000000000..8d7670eff --- /dev/null +++ b/vendor/maennchen/zipstream-php/test/Assertions.php @@ -0,0 +1,49 @@ +<?php + +declare(strict_types=1); + +namespace ZipStream\Test; + +trait Assertions +{ + protected function assertFileContains(string $filePath, string $needle): void + { + $last = ''; + + $handle = fopen($filePath, 'r'); + while (!feof($handle)) { + $line = fgets($handle, 1024); + + if (str_contains($last . $line, $needle)) { + fclose($handle); + return; + } + + $last = $line; + } + + fclose($handle); + + $this->fail("File {$filePath} must contain {$needle}"); + } + + protected function assertFileDoesNotContain(string $filePath, string $needle): void + { + $last = ''; + + $handle = fopen($filePath, 'r'); + while (!feof($handle)) { + $line = fgets($handle, 1024); + + if (str_contains($last . $line, $needle)) { + fclose($handle); + + $this->fail("File {$filePath} must not contain {$needle}"); + } + + $last = $line; + } + + fclose($handle); + } +} |