Refactor aggregator and filter retrieval into a new class

Moved aggregator and filter retrieval logic from ExportGenerator to the newly introduced ExportConfigProcessor class. This improves separation of concerns, simplifies ExportGenerator, and enhances code maintainability and readability. Updated related tests accordingly.
This commit is contained in:
2025-04-24 14:21:16 +02:00
parent 73496e0e1f
commit d49058805a
3 changed files with 81 additions and 41 deletions

View File

@@ -17,6 +17,7 @@ use Chill\MainBundle\Entity\User;
use Chill\MainBundle\Export\AggregatorInterface;
use Chill\MainBundle\Export\DirectExportInterface;
use Chill\MainBundle\Export\ExportConfigNormalizer;
use Chill\MainBundle\Export\ExportConfigProcessor;
use Chill\MainBundle\Export\ExportGenerationContext;
use Chill\MainBundle\Export\ExportGenerator;
use Chill\MainBundle\Export\ExportInterface;
@@ -131,7 +132,14 @@ class ExportGeneratorTest extends TestCase
$authorizationHelper = $this->prophesize(AuthorizationHelperInterface::class);
$authorizationHelper->getReachableCenters($user, 'dummy_role')->willReturn([$centerA, $centerB]);
$generator = new ExportGenerator($exportManager->reveal(), $exportConfigNormalizer->reveal(), new NullLogger(), $authorizationHelper->reveal(), new CenterRegroupementResolver());
$generator = new ExportGenerator(
$exportManager->reveal(),
$exportConfigNormalizer->reveal(),
new NullLogger(),
$authorizationHelper->reveal(),
new CenterRegroupementResolver(),
new ExportConfigProcessor($exportManager->reveal())
);
$actual = $generator->generate('dummy', $initialData, $user);
@@ -191,7 +199,14 @@ class ExportGeneratorTest extends TestCase
$authorizationHelper = $this->prophesize(AuthorizationHelperInterface::class);
$authorizationHelper->getReachableCenters($user, 'dummy_role')->willReturn([$centerA, $centerB]);
$generator = new ExportGenerator($exportManager->reveal(), $exportConfigNormalizer->reveal(), new NullLogger(), $authorizationHelper->reveal(), new CenterRegroupementResolver());
$generator = new ExportGenerator(
$exportManager->reveal(),
$exportConfigNormalizer->reveal(),
new NullLogger(),
$authorizationHelper->reveal(),
new CenterRegroupementResolver(),
new ExportConfigProcessor($exportManager->reveal())
);
$actual = $generator->generate('dummy', $initialData, $user);
@@ -233,7 +248,14 @@ class ExportGeneratorTest extends TestCase
$authorizationHelper = $this->prophesize(AuthorizationHelperInterface::class);
$authorizationHelper->getReachableCenters($user, 'dummy_role')->willReturn([$centerA, $centerB]);
$generator = new ExportGenerator($exportManager->reveal(), $exportConfigNormalizer->reveal(), new NullLogger(), $authorizationHelper->reveal(), new CenterRegroupementResolver());
$generator = new ExportGenerator(
$exportManager->reveal(),
$exportConfigNormalizer->reveal(),
new NullLogger(),
$authorizationHelper->reveal(),
new CenterRegroupementResolver(),
new ExportConfigProcessor($exportManager->reveal()),
);
$actual = $generator->generate('dummy', $initialData, $user);