|
|
@@ -12,7 +12,7 @@ use App\Repository\Core\FileRepository;
|
|
|
use App\Service\Export\BaseExporter;
|
|
|
use App\Service\Export\Encoder\EncoderInterface;
|
|
|
use App\Service\Export\Model\ExportModelInterface;
|
|
|
-use App\Service\File\Storage\LocalStorage;
|
|
|
+use App\Service\File\FileManager;
|
|
|
use App\Service\ServiceIterator\EncoderIterator;
|
|
|
use Doctrine\ORM\EntityManagerInterface;
|
|
|
use PHPUnit\Framework\MockObject\MockObject;
|
|
|
@@ -34,13 +34,13 @@ class TestableBaseExporter extends BaseExporter {
|
|
|
|
|
|
class BaseExporterTest extends TestCase
|
|
|
{
|
|
|
- private AccessRepository $accessRepository;
|
|
|
- private FileRepository $fileRepository;
|
|
|
- private Environment $twig;
|
|
|
- private EncoderIterator $encoderIterator;
|
|
|
- private EntityManagerInterface $entityManager;
|
|
|
- private LocalStorage $localStorage;
|
|
|
- private LoggerInterface $logger;
|
|
|
+ private MockObject | AccessRepository $accessRepository;
|
|
|
+ private MockObject | FileRepository $fileRepository;
|
|
|
+ private MockObject | Environment $twig;
|
|
|
+ private MockObject | EncoderIterator $encoderIterator;
|
|
|
+ private MockObject | EntityManagerInterface $entityManager;
|
|
|
+ private MockObject | LoggerInterface $logger;
|
|
|
+ private MockObject | FileManager $fileManager;
|
|
|
|
|
|
public function setUp(): void {
|
|
|
$this->accessRepository = $this->getMockBuilder(AccessRepository::class)->disableOriginalConstructor()->getMock();
|
|
|
@@ -48,15 +48,15 @@ class BaseExporterTest extends TestCase
|
|
|
$this->twig = $this->getMockBuilder(Environment::class)->disableOriginalConstructor()->getMock();
|
|
|
$this->encoderIterator = $this->getMockBuilder(EncoderIterator::class)->disableOriginalConstructor()->getMock();
|
|
|
$this->entityManager = $this->getMockBuilder(EntityManagerInterface::class)->disableOriginalConstructor()->getMock();
|
|
|
- $this->localStorage = $this->getMockBuilder(LocalStorage::class)->disableOriginalConstructor()->getMock();
|
|
|
$this->logger = $this->getMockBuilder(LoggerInterface::class)->disableOriginalConstructor()->getMock();
|
|
|
+ $this->fileManager = $this->getMockBuilder(FileManager::class)->disableOriginalConstructor()->getMock();
|
|
|
}
|
|
|
|
|
|
private function getBaseExporterMockFor(string $method): MockObject | TestableBaseExporter
|
|
|
{
|
|
|
$exporter = $this->getMockBuilder(TestableBaseExporter::class)
|
|
|
->setMethodsExcept([$method, 'setAccessRepository', 'setFileRepository', 'setTwig', 'setEncoderIterator',
|
|
|
- 'setEntityManager', 'setLocalStorage', 'setLogger'])
|
|
|
+ 'setEntityManager', 'setFileManager', 'setLogger'])
|
|
|
->getMock();
|
|
|
|
|
|
$exporter->setAccessRepository($this->accessRepository);
|
|
|
@@ -64,8 +64,8 @@ class BaseExporterTest extends TestCase
|
|
|
$exporter->setTwig($this->twig);
|
|
|
$exporter->setEncoderIterator($this->encoderIterator);
|
|
|
$exporter->setEntityManager($this->entityManager);
|
|
|
- $exporter->setLocalStorage($this->localStorage);
|
|
|
$exporter->setLogger($this->logger);
|
|
|
+ $exporter->setFileManager($this->fileManager);
|
|
|
|
|
|
return $exporter;
|
|
|
}
|
|
|
@@ -106,7 +106,7 @@ class BaseExporterTest extends TestCase
|
|
|
$file = $this->getMockBuilder(File::class)->disableOriginalConstructor()->getMock();
|
|
|
$this->fileRepository->method('find')->with(456, null, null)->willReturn($file);
|
|
|
|
|
|
- $this->localStorage->expects(self::once())->method('writeFile')->with($file, $data, $access);
|
|
|
+ $this->fileManager->expects(self::once())->method('write')->with($file, $data, $access);
|
|
|
|
|
|
$exporter->export($exportRequest);
|
|
|
}
|
|
|
@@ -138,7 +138,7 @@ class BaseExporterTest extends TestCase
|
|
|
$file = $this->getMockBuilder(File::class)->disableOriginalConstructor()->getMock();
|
|
|
$exporter->expects(self::once())->method('prepareFile')->willReturn($file);
|
|
|
|
|
|
- $this->localStorage->expects(self::once())->method('writeFile')->with($file, $data, $access);
|
|
|
+ $this->fileManager->expects(self::once())->method('write')->with($file, $data, $access);
|
|
|
|
|
|
$exporter->export($exportRequest);
|
|
|
}
|
|
|
@@ -155,7 +155,7 @@ class BaseExporterTest extends TestCase
|
|
|
|
|
|
$this->accessRepository->method('find')->with(123, null, null)->willReturn(null);
|
|
|
|
|
|
- $this->localStorage->expects(self::never())->method('writeFile');
|
|
|
+ $this->fileManager->expects(self::never())->method('write');
|
|
|
|
|
|
$this->expectException(\RuntimeException::class);
|
|
|
$this->expectExceptionMessage('Unable to determine the user; abort.');
|
|
|
@@ -186,7 +186,7 @@ class BaseExporterTest extends TestCase
|
|
|
$access->method('getOrganization')->willReturn(null);
|
|
|
$this->accessRepository->method('find')->with(123, null, null)->willReturn($access);
|
|
|
|
|
|
- $this->localStorage->expects(self::never())->method('writeFile');
|
|
|
+ $this->fileManager->expects(self::never())->method('write');
|
|
|
|
|
|
$this->expectException(\RuntimeException::class);
|
|
|
$this->expectExceptionMessage('Unable to determine the organization of the curent user; abort.');
|
|
|
@@ -212,7 +212,7 @@ class BaseExporterTest extends TestCase
|
|
|
|
|
|
$file = $this->getMockBuilder(File::class)->disableOriginalConstructor()->getMock();
|
|
|
|
|
|
- $this->localStorage->expects(self::once())
|
|
|
+ $this->fileManager->expects(self::once())
|
|
|
->method('prepareFile')
|
|
|
->with(
|
|
|
$access, 'Foo.pdf', FileTypeEnum::UNKNOWN(), $access, true, 'NOBODY', 'application/pdf', false
|