Skip to content

Commit 890acdb

Browse files
committed
Datetime form at + test fix
1 parent 2aa4022 commit 890acdb

11 files changed

Lines changed: 36 additions & 20 deletions

src/Identity/Serializer/AdministratorTokenNormalizer.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
namespace PhpList\RestBundle\Identity\Serializer;
66

7+
use DateTimeInterface;
78
use PhpList\Core\Domain\Identity\Model\AdministratorToken;
89
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
910

@@ -21,7 +22,7 @@ public function normalize($object, string $format = null, array $context = []):
2122
return [
2223
'id' => $object->getId(),
2324
'key' => $object->getKey(),
24-
'expiry_date' => $object->getExpiry()->format('Y-m-d\TH:i:sP'),
25+
'expiry_date' => $object->getExpiry()->format(DateTimeInterface::ATOM),
2526
];
2627
}
2728

src/Messaging/Serializer/ListMessageNormalizer.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ public function normalize($object, string $format = null, array $context = []):
5151
'id' => $object->getId(),
5252
'message' => $this->messageNormalizer->normalize($object->getMessage()),
5353
'subscriber_list' => $this->subscriberListNormalizer->normalize($object->getList()),
54-
'created_at' => $object->getEntered()->format('Y-m-d\TH:i:sP'),
55-
'updated_at' => $object->getUpdatedAt()->format('Y-m-d\TH:i:sP'),
54+
'created_at' => $object->getEntered()->format(\DateTimeInterface::ATOM),
55+
'updated_at' => $object->getUpdatedAt()->format(\DateTimeInterface::ATOM),
5656
];
5757
}
5858

src/Messaging/Serializer/MessageNormalizer.php

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
namespace PhpList\RestBundle\Messaging\Serializer;
66

7+
use DateTimeInterface;
78
use OpenApi\Attributes as OA;
89
use PhpList\Core\Domain\Messaging\Model\Message;
910
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
@@ -117,16 +118,16 @@ public function normalize($object, string $format = null, array $context = []):
117118
'processed' => $object->getMetadata()->getProcessed(),
118119
'views' => $object->getMetadata()->getViews(),
119120
'bounce_count' => $object->getMetadata()->getBounceCount(),
120-
'entered' => $object->getMetadata()->getEntered()?->format('Y-m-d\TH:i:sP'),
121-
'sent' => $object->getMetadata()->getSent()?->format('Y-m-d\TH:i:sP'),
122-
'send_start' => $object->getMetadata()->getSendStart()?->format('Y-m-d\TH:i:sP'),
121+
'entered' => $object->getMetadata()->getEntered()?->format(DateTimeInterface::ATOM),
122+
'sent' => $object->getMetadata()->getSent()?->format(DateTimeInterface::ATOM),
123+
'send_start' => $object->getMetadata()->getSendStart()?->format(DateTimeInterface::ATOM),
123124
],
124125
'message_schedule' => [
125126
'repeat_interval' => $object->getSchedule()->getRepeatInterval(),
126-
'repeat_until' => $object->getSchedule()->getRepeatUntil()?->format('Y-m-d\TH:i:sP'),
127+
'repeat_until' => $object->getSchedule()->getRepeatUntil()?->format(DateTimeInterface::ATOM),
127128
'requeue_interval' => $object->getSchedule()->getRequeueInterval(),
128-
'requeue_until' => $object->getSchedule()->getRequeueUntil()?->format('Y-m-d\TH:i:sP'),
129-
'embargo' => $object->getSchedule()->getEmbargo()?->format('Y-m-d\TH:i:sP'),
129+
'requeue_until' => $object->getSchedule()->getRequeueUntil()?->format(DateTimeInterface::ATOM),
130+
'embargo' => $object->getSchedule()->getEmbargo()?->format(DateTimeInterface::ATOM),
130131
],
131132
'message_options' => [
132133
'from_field' => $object->getOptions()->getFromField(),

src/Subscription/Serializer/SubscriberHistoryNormalizer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public function normalize($object, string $format = null, array $context = []):
3939
return [
4040
'id' => $object->getId(),
4141
'ip' => $object->getIp(),
42-
'created_at' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
42+
'created_at' => $object->getCreatedAt()->format(\DateTimeInterface::ATOM),
4343
'summary' => $object->getSummary(),
4444
'detail' => $object->getDetail(),
4545
'system_info' => $object->getSystemInfo(),

src/Subscription/Serializer/SubscriberListNormalizer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public function normalize($object, string $format = null, array $context = []):
4242
return [
4343
'id' => $object->getId(),
4444
'name' => $object->getName(),
45-
'created_at' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
45+
'created_at' => $object->getCreatedAt()->format(\DateTimeInterface::ATOM),
4646
'description' => $object->getDescription(),
4747
'list_position' => $object->getListPosition(),
4848
'subject_prefix' => $object->getSubjectPrefix(),

src/Subscription/Serializer/SubscriberNormalizer.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ public function normalize($object, string $format = null, array $context = []):
6767
return [
6868
'id' => $object->getId(),
6969
'email' => $object->getEmail(),
70-
'created_at' => $object->getCreatedAt()?->format('Y-m-d\TH:i:sP'),
71-
'updated_at' => $object->getUpdatedAt()?->format('Y-m-d\TH:i:sP'),
70+
'created_at' => $object->getCreatedAt()?->format(\DateTimeInterface::ATOM),
71+
'updated_at' => $object->getUpdatedAt()?->format(\DateTimeInterface::ATOM),
7272
'confirmed' => $object->isConfirmed(),
7373
'blacklisted' => $object->isBlacklisted(),
7474
'bounce_count' => $object->getBounceCount(),

src/Subscription/Serializer/SubscriberOnlyNormalizer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public function normalize($object, string $format = null, array $context = []):
4242
return [
4343
'id' => $object->getId(),
4444
'email' => $object->getEmail(),
45-
'created_at' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
45+
'created_at' => $object->getCreatedAt()->format(\DateTimeInterface::ATOM),
4646
'confirmed' => $object->isConfirmed(),
4747
'blacklisted' => $object->isBlacklisted(),
4848
'bounce_count' => $object->getBounceCount(),

src/Subscription/Serializer/SubscriptionNormalizer.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
namespace PhpList\RestBundle\Subscription\Serializer;
66

7+
use DateTimeInterface;
78
use OpenApi\Attributes as OA;
89
use PhpList\Core\Domain\Subscription\Model\Subscription;
910
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
@@ -47,7 +48,7 @@ public function normalize($object, string $format = null, array $context = []):
4748
return [
4849
'subscriber' => $this->subscriberNormalizer->normalize($object->getSubscriber()),
4950
'subscriber_list' => $this->subscriberListNormalizer->normalize($object->getSubscriberList()),
50-
'subscription_date' => $object->getCreatedAt()->format('Y-m-d\TH:i:sP'),
51+
'subscription_date' => $object->getCreatedAt()->format(DateTimeInterface::ATOM),
5152
];
5253
}
5354

src/Subscription/Serializer/UserBlacklistNormalizer.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public function normalize($object, string $format = null, array $context = []):
2727

2828
return [
2929
'email' => $object->getEmail(),
30-
'added' => $object->getAdded()?->format('Y-m-d\TH:i:sP'),
30+
'added' => $object->getAdded()?->format(\DateTimeInterface::ATOM),
3131
'reason' => $reason,
3232
];
3333
}

tests/Integration/Identity/Controller/PasswordResetControllerTest.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ public function testRequestPasswordResetWithInvalidEmailReturnsError422(): void
3232

3333
$this->assertHttpUnprocessableEntity();
3434
$data = $this->getDecodedJsonResponseContent();
35-
$this->assertStringContainsString('This value is not a valid email address', $data['message']);
35+
$this->assertStringContainsString('Validation failed', $data['message']);
36+
$this->assertStringContainsString('This value is not a valid email address', $data['errors']['email'][0]);
3637
}
3738

3839
public function testRequestPasswordResetWithNonExistentEmailReturnsError404(): void
@@ -97,6 +98,7 @@ public function testResetPasswordWithShortPasswordReturnsError422(): void
9798

9899
$this->assertHttpUnprocessableEntity();
99100
$data = $this->getDecodedJsonResponseContent();
100-
$this->assertStringContainsString('This value is too short', $data['message']);
101+
$this->assertStringContainsString('Validation failed', $data['message']);
102+
$this->assertStringContainsString('This value is too short', $data['errors']['newPassword'][0]);
101103
}
102104
}

0 commit comments

Comments
 (0)