fix tests

This commit is contained in:
Dennis Eichhorn 2023-10-22 22:25:59 +00:00
parent bbbf96ad8e
commit 31a77c08e5
2 changed files with 13 additions and 14 deletions

View File

@ -43,16 +43,16 @@ class ICalParser
$event = [];
\preg_match('/UID:(.*?)\n/', $match[1], $uidMatch);
$event['uid'] = \DateTime::createFromFormat('Ymd\THis', $uidMatch[1]);
$event['uid'] = \DateTime::createFromFormat('Ymd\THis', $uidMatch[1] ?? '');
\preg_match('/STATUS:(.*?)\n/', $match[1], $statusMatch);
$event['status'] = \DateTime::createFromFormat('Ymd\THis', $statusMatch[1]);
$event['status'] = \DateTime::createFromFormat('Ymd\THis', $statusMatch[1] ?? '');
\preg_match('/DTSTART:(.*?)\n/', $match[1], $startMatch);
$event['start'] = \DateTime::createFromFormat('Ymd\THis', $startMatch[1]);
$event['start'] = \DateTime::createFromFormat('Ymd\THis', $startMatch[1] ?? '');
\preg_match('/DTEND:(.*?)\n/', $match[1], $endMatch);
$event['end'] = \DateTime::createFromFormat('Ymd\THis', $endMatch[1]);
$event['end'] = \DateTime::createFromFormat('Ymd\THis', $endMatch[1] ?? '');
\preg_match('/ORGANIZER:(.*?)\n/', $match[1], $organizerMatch);
$event['organizer'] = $organizerMatch[1] ?? '';
@ -102,17 +102,17 @@ class ICalParser
$rrule = [];
\preg_match('/FREQ=(.*?);/', $rruleString, $freqMatch);
$rrule['freq'] = $freqMatch[1];
$rrule['freq'] = $freqMatch[1] ?? '';
\preg_match('/INTERVAL=(.*?);/', $rruleString, $intervalMatch);
$rrule['interval'] = (int) $intervalMatch[1];
$rrule['interval'] = (int) ($intervalMatch[1] ?? 0);
if (\preg_match('/COUNT=(.*?);/', $rruleString, $countMatch)) {
$rrule['count'] = (int) $countMatch[1];
$rrule['count'] = (int) ($countMatch[1] ?? 0);
}
if (\preg_match('/UNTIL=(.*?);/', $rruleString, $untilMatch)) {
$rrule['until'] = \DateTime::createFromFormat('Ymd\THis', $untilMatch[1]);
$rrule['until'] = \DateTime::createFromFormat('Ymd\THis', $untilMatch[1] ?? '');
}
return $rrule;

View File

@ -31,13 +31,12 @@ final class ICalParserTest extends \PHPUnit\Framework\TestCase
foreach ($files as $file) {
$data = \explode('.', $file);
if ($data[1] === 'ical'
&& (\json_decode(\file_get_contents(__DIR__ . '/data/' . $data[0] . '.json'), true) !== ($parsed = ICalParser::parse(\file_get_contents(__DIR__ . '/data/' . $data[0] . '.ical'))))
) {
self::assertTrue(false, $file . "\n\n" . $parsed);
if ($data[1] === 'ical') {
self::assertEquals(
\json_decode(\file_get_contents(__DIR__ . '/data/' . $data[0] . '.json'), true),
ICalParser::parse(\file_get_contents(__DIR__ . '/data/' . $data[0] . '.ical'))
);
}
}
self::assertTrue(true);
}
}