|
|
|
@ -142,6 +142,14 @@ class NotifierTest extends TestCase {
|
|
|
|
|
$this->notifier->prepare($notification, 'en');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static function hasPhpDatetimeDiffBug(): bool {
|
|
|
|
|
$d1 = \DateTime::createFromFormat(\DateTimeInterface::ATOM, '2023-11-22T11:52:00+01:00');
|
|
|
|
|
$d2 = new \DateTime('2023-11-22T10:52:03', new \DateTimeZone('UTC'));
|
|
|
|
|
|
|
|
|
|
// The difference is 3 seconds, not -1year+11months+…
|
|
|
|
|
return $d1->diff($d2)->y < 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function dataPrepare(): array {
|
|
|
|
|
return [
|
|
|
|
|
[
|
|
|
|
@ -150,7 +158,7 @@ class NotifierTest extends TestCase {
|
|
|
|
|
'title' => 'Title of this event',
|
|
|
|
|
'start_atom' => '2005-08-15T15:52:01+02:00'
|
|
|
|
|
],
|
|
|
|
|
'Title of this event (in 1 hour, 52 minutes)',
|
|
|
|
|
self::hasPhpDatetimeDiffBug() ? 'Title of this event' : 'Title of this event (in 1 hour, 52 minutes)',
|
|
|
|
|
[
|
|
|
|
|
'title' => 'Title of this event',
|
|
|
|
|
'description' => null,
|
|
|
|
@ -172,7 +180,7 @@ class NotifierTest extends TestCase {
|
|
|
|
|
'title' => 'Title of this event',
|
|
|
|
|
'start_atom' => '2005-08-15T13:00:00+02:00',
|
|
|
|
|
],
|
|
|
|
|
'Title of this event (1 hour ago)',
|
|
|
|
|
self::hasPhpDatetimeDiffBug() ? 'Title of this event' : 'Title of this event (1 hour ago)',
|
|
|
|
|
[
|
|
|
|
|
'title' => 'Title of this event',
|
|
|
|
|
'description' => null,
|
|
|
|
@ -281,7 +289,7 @@ class NotifierTest extends TestCase {
|
|
|
|
|
|
|
|
|
|
$notification->expects($this->once())
|
|
|
|
|
->method('setParsedSubject')
|
|
|
|
|
->with('Title of this event (6 hours ago)')
|
|
|
|
|
->with(self::hasPhpDatetimeDiffBug() ? 'Title of this event' : 'Title of this event (6 hours ago)')
|
|
|
|
|
->willReturnSelf();
|
|
|
|
|
|
|
|
|
|
$this->expectException(AlreadyProcessedException::class);
|
|
|
|
|