Refactor imports and remove redundant type strings

This commit refactors the usage of \DateTimeImmutable to ensure consistent namespacing and removes unnecessary string type declarations from constants in CancelStaleWorkflowCronJob. These changes improve code readability and maintainability.
This commit is contained in:
Julien Fastré 2024-09-09 14:58:19 +02:00
parent ee9530d03f
commit d152efe084
Signed by: julienfastre
GPG Key ID: BDE2190974723FCB
2 changed files with 10 additions and 13 deletions

View File

@ -20,11 +20,11 @@ use Symfony\Component\Messenger\MessageBusInterface;
class CancelStaleWorkflowCronJob implements CronJobInterface class CancelStaleWorkflowCronJob implements CronJobInterface
{ {
public const string KEY = 'remove-stale-workflow'; public const KEY = 'remove-stale-workflow';
public const string KEEP_INTERVAL = 'P90D'; public const KEEP_INTERVAL = 'P90D';
private const string LAST_CANCELED_WORKFLOW = 'last-canceled-workflow-id'; private const LAST_CANCELED_WORKFLOW = 'last-canceled-workflow-id';
public function __construct( public function __construct(
private readonly EntityWorkflowRepository $workflowRepository, private readonly EntityWorkflowRepository $workflowRepository,

View File

@ -16,9 +16,6 @@ use Chill\MainBundle\Repository\Workflow\EntityWorkflowRepository;
use Chill\MainBundle\Service\Workflow\CancelStaleWorkflow; use Chill\MainBundle\Service\Workflow\CancelStaleWorkflow;
use Chill\MainBundle\Service\Workflow\CancelStaleWorkflowCronJob; use Chill\MainBundle\Service\Workflow\CancelStaleWorkflowCronJob;
use Chill\MainBundle\Service\Workflow\CancelStaleWorkflowMessage; use Chill\MainBundle\Service\Workflow\CancelStaleWorkflowMessage;
use DateInvalidTimeZoneException;
use DateMalformedStringException;
use DateTimeImmutable;
use Doctrine\DBAL\Connection; use Doctrine\DBAL\Connection;
use PHPUnit\Framework\MockObject\Exception; use PHPUnit\Framework\MockObject\Exception;
use Psr\Log\LoggerInterface; use Psr\Log\LoggerInterface;
@ -47,7 +44,7 @@ class CancelStaleWorkflowCronJobTest extends KernelTestCase
*/ */
public function testCanRun(?CronJobExecution $cronJobExecution, bool $expected): void public function testCanRun(?CronJobExecution $cronJobExecution, bool $expected): void
{ {
$clock = new MockClock(new DateTimeImmutable('2024-01-01 00:00:00', new \DateTimeZone('+00:00'))); $clock = new MockClock(new \DateTimeImmutable('2024-01-01 00:00:00', new \DateTimeZone('+00:00')));
$logger = $this->createMock(LoggerInterface::class); $logger = $this->createMock(LoggerInterface::class);
$cronJob = new CancelStaleWorkflowCronJob($this->createMock(EntityWorkflowRepository::class), $clock, $this->buildMessageBus(), $logger); $cronJob = new CancelStaleWorkflowCronJob($this->createMock(EntityWorkflowRepository::class), $clock, $this->buildMessageBus(), $logger);
@ -56,13 +53,13 @@ class CancelStaleWorkflowCronJobTest extends KernelTestCase
} }
/** /**
* @throws DateMalformedStringException * @throws \DateMalformedStringException
* @throws DateInvalidTimeZoneException * @throws \DateInvalidTimeZoneException
* @throws \Exception|Exception * @throws \Exception|Exception
*/ */
public function testRun(): void public function testRun(): void
{ {
$clock = new MockClock((new DateTimeImmutable('now', new \DateTimeZone('+00:00')))->add(new \DateInterval('P120D'))); $clock = new MockClock((new \DateTimeImmutable('now', new \DateTimeZone('+00:00')))->add(new \DateInterval('P120D')));
$workflowRepository = $this->createMock(EntityWorkflowRepository::class); $workflowRepository = $this->createMock(EntityWorkflowRepository::class);
$logger = $this->createMock(LoggerInterface::class); $logger = $this->createMock(LoggerInterface::class);
@ -84,17 +81,17 @@ class CancelStaleWorkflowCronJobTest extends KernelTestCase
public static function buildTestCanRunData(): iterable public static function buildTestCanRunData(): iterable
{ {
yield [ yield [
(new CronJobExecution('last-canceled-workflow-id'))->setLastEnd(new DateTimeImmutable('2023-12-31 00:00:00', new \DateTimeZone('+00:00'))), (new CronJobExecution('last-canceled-workflow-id'))->setLastEnd(new \DateTimeImmutable('2023-12-31 00:00:00', new \DateTimeZone('+00:00'))),
true, true,
]; ];
yield [ yield [
(new CronJobExecution('last-canceled-workflow-id'))->setLastEnd(new DateTimeImmutable('2023-12-30 23:59:59', new \DateTimeZone('+00:00'))), (new CronJobExecution('last-canceled-workflow-id'))->setLastEnd(new \DateTimeImmutable('2023-12-30 23:59:59', new \DateTimeZone('+00:00'))),
true, true,
]; ];
yield [ yield [
(new CronJobExecution('last-canceled-workflow-id'))->setLastEnd(new DateTimeImmutable('2023-12-31 00:00:01', new \DateTimeZone('+00:00'))), (new CronJobExecution('last-canceled-workflow-id'))->setLastEnd(new \DateTimeImmutable('2023-12-31 00:00:01', new \DateTimeZone('+00:00'))),
false, false,
]; ];
} }