fix tests

This commit is contained in:
Julien Fastré 2025-04-08 17:41:34 +02:00
parent f807d62dab
commit 4129283a58
Signed by: julienfastre
GPG Key ID: BDE2190974723FCB
2 changed files with 33 additions and 0 deletions

View File

@ -70,11 +70,19 @@ final readonly class ReferrerAggregator implements AggregatorInterface
public function normalizeFormData(array $formData): array
{
if (!array_key_exists('referrer_at', $formData)) {
return ['referrer_at' => (new RollingDate(RollingDate::T_TODAY))->normalize()];
}
return ['referrer_at' => $formData['referrer_at']->normalize()];
}
public function denormalizeFormData(array $formData, int $fromVersion): array
{
if (!array_key_exists('referrer_at', $formData)) {
return ['referrer_at' => new RollingDate(RollingDate::T_TODAY)];
}
return ['referrer_at' => RollingDate::fromNormalized($formData['referrer_at'])];
}

View File

@ -60,4 +60,29 @@ final class ReferrerAggregatorTest extends AbstractAggregatorTest
->from(AccompanyingPeriodWork::class, 'acpw'),
];
}
/**
* A list of data to normalize.
*
* @return iterable{array}
*/
public static function dataProviderFormDataToNormalize(): iterable
{
foreach (self::getFormData() as $data) {
yield [$data, 1, []];
}
}
/**
* @dataProvider dataProviderFormDataToNormalize
*/
public function testDataNormalization(array $data, int $version, array $customAssert): void
{
$aggregator = $this->getAggregator();
$normalized = $aggregator->normalizeFormData($data);
$actual = $aggregator->denormalizeFormData($normalized, $version);
self::assertIsArray($actual);
}
}