6use PHPUnit\Framework\TestCase;
11 use VObject\PHPUnitAssertions;
31 $this->assertVObjectEqualsVObject(
$output,
$vcal->serialize());
57DTSTART;VALUE=DATE:20111202
62DTSTART;VALUE=DATE:20120101
73DTSTART;VALUE=DATE:20111202
90DTSTART;TZID=Europe/Paris:20111203T130102
101DTSTART:20111203T120102Z
118DTSTART;TZID=Europe/Paris:20111203T130102
120TRIGGER;VALUE=DATE-TIME;TZID=America/New_York:20151209T133200
132DTSTART:20111203T120102Z
134TRIGGER;VALUE=DATE-TIME:20151209T183200Z
149DTSTART:20111125T120000Z
150DTEND:20111125T130000Z
162DTSTART:20111202T120000Z
163DTEND:20111202T130000Z
164RECURRENCE-ID:20111202T120000Z
169DTSTART:20111209T120000Z
170DTEND:20111209T130000Z
171RECURRENCE-ID:20111209T120000Z
176DTSTART:20111216T120000Z
177DTEND:20111216T130000Z
178RECURRENCE-ID:20111216T120000Z
183DTSTART:20111223T120000Z
184DTEND:20111223T130000Z
185RECURRENCE-ID:20111223T120000Z
190DTSTART:20111230T120000Z
191DTEND:20111230T130000Z
192RECURRENCE-ID:20111230T120000Z
205SUMMARY:Testing RRule2
206DTSTART:20111125T120000Z
207DTEND:20111125T130000Z
212RECURRENCE-ID:20111209T120000Z
213DTSTART:20111209T140000Z
214DTEND:20111209T150000Z
225SUMMARY:Testing RRule2
226DTSTART:20111202T120000Z
227DTEND:20111202T130000Z
228RECURRENCE-ID:20111202T120000Z
232RECURRENCE-ID:20111209T120000Z
233DTSTART:20111209T140000Z
234DTEND:20111209T150000Z
239SUMMARY:Testing RRule2
240DTSTART:20111216T120000Z
241DTEND:20111216T130000Z
242RECURRENCE-ID:20111216T120000Z
246SUMMARY:Testing RRule2
247DTSTART:20111223T120000Z
248DTEND:20111223T130000Z
249RECURRENCE-ID:20111223T120000Z
253SUMMARY:Testing RRule2
254DTSTART:20111230T120000Z
255DTEND:20111230T130000Z
256RECURRENCE-ID:20111230T120000Z
269DTSTART:20141112T195000
273DTSTART;VALUE=DATE:20141112
277DTSTART;VALUE=DATE:20141112
278RRULE:FREQ=DAILY;COUNT=2
288DTSTART:20141112T225000Z
292DTSTART;VALUE=DATE:20141112
296DTSTART;VALUE=DATE:20141112
297RECURRENCE-ID;VALUE=DATE:20141112
301DTSTART;VALUE=DATE:20141113
302RECURRENCE-ID;VALUE=DATE:20141113
307 $tests[] = [
$input,
$output,
'America/Argentina/Buenos_Aires',
'2014-01-01',
'2015-01-01'];
315SUMMARY:Testing RRule3
316DTSTART:20111125T120000Z
317DTEND:20111125T130000Z
318RRULE:FREQ=WEEKLY;COUNT=1
319EXDATE:20111125T120000Z
345DTSTART;VALUE=DATE:20111202
351 new \DateTime(
'2011-12-01'),
352 new \DateTime(
'2011-12-31')
360 $vcard->VERSION =
'2.0';
372DTSTART;VALUE=DATE:20111202
373DTSTAMP:20140122T233226Z
380 $this->assertEquals([],
$vcal->validate(),
'Got an error');
390DTSTART;VALUE=DATE:20111202
392DTSTAMP:20140122T234434Z
398 $this->assertEquals(1,
count(
$vcal->validate()));
409DTSTART;VALUE=DATE:20111202
411DTSTAMP:20140122T234434Z
417 $this->assertEquals(1,
count(
$vcal->validate()));
427DTSTART;VALUE=DATE:20111202
429DTSTAMP:20140122T234434Z
435 $this->assertEquals(1,
count(
$vcal->validate()));
447DTSTART;VALUE=DATE:20111202
449DTSTAMP:20140122T234434Z
455 $this->assertEquals(1,
count(
$vcal->validate()));
467DTSTART;VALUE=DATE:20111202
469DTSTAMP:20140122T234434Z
475 $this->assertEquals(1,
count(
$vcal->validate()));
486DTSTART;VALUE=DATE:20111202
488DTSTAMP:20140122T234434Z
491DTSTART;VALUE=DATE:20111202
493DTSTAMP:20140122T234434Z
499 $this->assertEquals(1,
count(
$vcal->validate()));
510DTSTART;VALUE=DATE:20111202
512DTSTAMP:20140122T234434Z
515DTSTART;VALUE=DATE:20111202
517DTSTAMP:20140122T234434Z
518RECURRENCE-ID;VALUE=DATE:20111202
524 $this->assertEquals(0,
count(
$vcal->validate()));
536DTSTART;VALUE=DATE:20111202
538DTSTAMP:20140122T234434Z
541DTSTART;VALUE=DATE:20111202
543DTSTAMP:20140122T234434Z
544RECURRENCE-ID;VALUE=DATE:20111202
552 $this->assertEquals(
'test',
$result->SUMMARY->getValue());
564RECURRENCE-ID;VALUE=DATE:20111202
565DTSTART;VALUE=DATE:20111202
567DTSTAMP:20140122T234434Z
570DTSTART;VALUE=DATE:20111202
572DTSTAMP:20140122T234434Z
573RECURRENCE-ID;VALUE=DATE:20111202
593DTSTART;VALUE=DATE:20111202
595DTSTAMP:20140122T234434Z
598DTSTART;VALUE=DATE:20111202
600DTSTAMP:20140122T234434Z
601RECURRENCE-ID;VALUE=DATE:20111202
609 $this->assertEquals(
'test',
$result->SUMMARY->getValue());
622DTSTAMP:20140122T234434Z
647 "An iCalendar object must have at least 1 component."
668 "A calendar object on a CalDAV server must have at least 1 component (VTODO, VEVENT, VJOURNAL)."
681DTSTAMP:20150109T184500Z
682DTSTART:20150109T184500Z
686DTSTAMP:20150109T184500Z
687DTSTART:20150109T184500Z
696 "A calendar object on a CalDAV server may only have components with the same UID."
709RECURRENCE-ID:20150109T185200Z
710DTSTAMP:20150109T184500Z
711DTSTART:20150109T184500Z
715DTSTAMP:20150109T184500Z
716DTSTART:20150109T184500Z
725 "A calendar object on a CalDAV server may only have 1 type of component (VEVENT, VTODO or VJOURNAL)."
739RECURRENCE-ID:20150109T185200Z
740DTSTAMP:20150109T184500Z
741DTSTART:20150109T184500Z
750 "A calendar object on a CalDAV server MUST NOT have a METHOD property."
771 if ($expectedLevel === 0) {
772 $this->assertEquals(0,
count(
$input),
'No validation messages were expected. We got: ' . implode(
', ',
$messages));
774 $this->assertEquals(1,
count(
$input),
'We expected exactly 1 validation message, We got: ' . implode(
', ',
$messages));
776 $this->assertEquals($expectedMessage,
$input[0][
'message']);
777 $this->assertEquals($expectedLevel,
$input[0][
'level']);
An exception for terminatinating execution or to throw for unit testing.
testExpand($input, $output, $timeZone='UTC', $start='2011-12-01', $end='2011-12-31')
@dataProvider expandData
assertValidateResult($input, $expectedLevel, $expectedMessage=null)
testValidateOneMasterEvent()
testBrokenEventExpand()
@expectedException \Sabre\VObject\InvalidDataException
testGetBaseComponentWithFilter()
testCalDAVMultiComponent()
assertValidate($ics, $options, $expectedLevel, $expectedMessage=null)
testValidateDoubleCalScale()
testValidateDoubleMethod()
testGetBaseComponentNoResult()
testGetBaseComponentWithFilterNoResult()
testValidateTwoMasterEvents()
testValidateWrongVersion()
const ICALENDAR20
iCalendar 2.0.
const PROFILE_CALDAV
If this option is set, the validator will operate on iCalendar objects on the assumption that the vca...
count()
Returns the number of elements.
static read($data, $options=0, $charset='UTF-8')
Parses a vCard or iCalendar object, and returns the top component.
foreach($paths as $path) if($argc< 3) $input