Move all banners to GitHub. Adds library phpspreadsheet to JCB. Adds import item example to demo component. Updates the Superpower class with the GetRemote class in the plugin. Ensures the super power autoloader triggers the correct repositories.
50 lines
1.0 KiB
PHP
50 lines
1.0 KiB
PHP
<?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);
|
|
}
|
|
}
|