test filesystem abstraction

This commit is contained in:
Yisroel Baum 2026-06-26 08:23:17 +03:00
parent bc7937d2b3
commit be2c51bfb7
Signed by: yisroelbaum
GPG key ID: 0FA60884F75520A9
10 changed files with 66 additions and 78 deletions

View file

@ -5,24 +5,24 @@ namespace Tests\Unit\Element\UseCases;
use App\Element\UseCases\GetElementPdf\GetElementPdf;
use App\Element\UseCases\GetElementPdf\GetElementPdfRequest;
use App\Exceptions\NotFoundException;
use Tests\Fakes\FakeStoredFileReader;
use Tests\Fakes\FakeFilesystem;
use Tests\TestCase;
class GetElementPdfTest extends TestCase
{
private FakeStoredFileReader $storedFileReader;
private FakeFilesystem $filesystem;
private GetElementPdf $useCase;
protected function setUp(): void
{
$this->storedFileReader = new FakeStoredFileReader();
$this->useCase = new GetElementPdf($this->storedFileReader);
$this->filesystem = new FakeFilesystem();
$this->useCase = new GetElementPdf($this->filesystem);
}
public function testReturnsShortPdfFile(): void
{
$this->storedFileReader->put(
$this->filesystem->put(
'element-pdfs/short/baderech.pdf',
'short-pdf-bytes',
);
@ -37,13 +37,13 @@ class GetElementPdfTest extends TestCase
$this->assertSame('application/pdf', $result->getMimeType());
$this->assertSame(
['element-pdfs/short/baderech.pdf'],
$this->storedFileReader->readPaths,
$this->filesystem->readPaths,
);
}
public function testReturnsLongPdfFile(): void
{
$this->storedFileReader->put(
$this->filesystem->put(
'element-pdfs/long/baderech-long.pdf',
'long-pdf-bytes',
);
@ -58,7 +58,7 @@ class GetElementPdfTest extends TestCase
$this->assertSame('application/pdf', $result->getMimeType());
$this->assertSame(
['element-pdfs/long/baderech-long.pdf'],
$this->storedFileReader->readPaths,
$this->filesystem->readPaths,
);
}