File: RecurrenceIteratorFifthTuesdayProblemTest.php

package info (click to toggle)
php-sabre-vobject 2.1.7-6.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid
  • size: 1,172 kB
  • sloc: php: 6,487; makefile: 17; xml: 16
file content (44 lines) | stat: -rw-r--r-- 982 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php

namespace Sabre\VObject;

class RecurrenceIteratorFifthTuesdayProblemTest extends \PHPUnit\Framework\TestCase {

    function testGetDTEnd() {

        $ics = <<<ICS
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Apple Inc.//iCal 4.0.4//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
TRANSP:OPAQUE
DTEND;TZID=America/New_York:20070925T170000
UID:uuid
DTSTAMP:19700101T000000Z
LOCATION:
DESCRIPTION:
STATUS:CONFIRMED
SEQUENCE:18
SUMMARY:Stuff
DTSTART;TZID=America/New_York:20070925T160000
CREATED:20071004T144642Z
RRULE:FREQ=MONTHLY;INTERVAL=1;UNTIL=20071030T035959Z;BYDAY=5TU
END:VEVENT
END:VCALENDAR
ICS;

        $vObject = Reader::read($ics);
        $it = new RecurrenceIterator($vObject, (string)$vObject->VEVENT->UID);

        while($it->valid()) {
            $it->next();
        }

        // If we got here, it means we were successful. The bug that was in the
        // system before would fail on the 5th tuesday of the month, if the 5th
        // tuesday did not exist.

    }

}