mirror of
https://git.friendi.ca/friendica/friendica-addons.git
synced 2025-07-08 01:18:48 +00:00
Initial Release of the calendar plugin
This commit is contained in:
parent
45cc9885fc
commit
7115197a33
561 changed files with 189494 additions and 0 deletions
141
dav/SabreDAV/tests/Sabre/VObject/Component/VAlarmTest.php
Normal file
141
dav/SabreDAV/tests/Sabre/VObject/Component/VAlarmTest.php
Normal file
|
@ -0,0 +1,141 @@
|
|||
<?php
|
||||
|
||||
class Sabre_VObject_Component_VAlarmTest extends PHPUnit_Framework_TestCase {
|
||||
|
||||
/**
|
||||
* @dataProvider timeRangeTestData
|
||||
*/
|
||||
public function testInTimeRange(Sabre_VObject_Component_VAlarm $valarm,$start,$end,$outcome) {
|
||||
|
||||
$this->assertEquals($outcome, $valarm->isInTimeRange($start, $end));
|
||||
|
||||
}
|
||||
|
||||
public function timeRangeTestData() {
|
||||
|
||||
$tests = array();
|
||||
|
||||
// Hard date and time
|
||||
$valarm1 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm1->TRIGGER = '20120312T130000Z';
|
||||
$valarm1->TRIGGER['VALUE'] = 'DATE-TIME';
|
||||
|
||||
$tests[] = array($valarm1, new DateTime('2012-03-01 01:00:00'), new DateTime('2012-04-01 01:00:00'), true);
|
||||
$tests[] = array($valarm1, new DateTime('2012-03-01 01:00:00'), new DateTime('2012-03-10 01:00:00'), false);
|
||||
|
||||
// Relation to start time of event
|
||||
$valarm2 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm2->TRIGGER = '-P1D';
|
||||
$valarm2->TRIGGER['VALUE'] = 'DURATION';
|
||||
|
||||
$vevent2 = Sabre_VObject_Component::create('VEVENT');
|
||||
$vevent2->DTSTART = '20120313T130000Z';
|
||||
$vevent2->add($valarm2);
|
||||
|
||||
$tests[] = array($valarm2, new DateTime('2012-03-01 01:00:00'), new DateTime('2012-04-01 01:00:00'), true);
|
||||
$tests[] = array($valarm2, new DateTime('2012-03-01 01:00:00'), new DateTime('2012-03-10 01:00:00'), false);
|
||||
|
||||
// Relation to end time of event
|
||||
$valarm3 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm3->TRIGGER = '-P1D';
|
||||
$valarm3->TRIGGER['VALUE'] = 'DURATION';
|
||||
$valarm3->TRIGGER['RELATED']= 'END';
|
||||
|
||||
$vevent3 = Sabre_VObject_Component::create('VEVENT');
|
||||
$vevent3->DTSTART = '20120301T130000Z';
|
||||
$vevent3->DTEND = '20120401T130000Z';
|
||||
$vevent3->add($valarm3);
|
||||
|
||||
$tests[] = array($valarm3, new DateTime('2012-02-25 01:00:00'), new DateTime('2012-03-05 01:00:00'), false);
|
||||
$tests[] = array($valarm3, new DateTime('2012-03-25 01:00:00'), new DateTime('2012-04-05 01:00:00'), true);
|
||||
|
||||
// Relation to end time of todo
|
||||
$valarm4 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm4->TRIGGER = '-P1D';
|
||||
$valarm4->TRIGGER['VALUE'] = 'DURATION';
|
||||
$valarm4->TRIGGER['RELATED']= 'END';
|
||||
|
||||
$vtodo4 = Sabre_VObject_Component::create('VTODO');
|
||||
$vtodo4->DTSTART = '20120301T130000Z';
|
||||
$vtodo4->DUE = '20120401T130000Z';
|
||||
$vtodo4->add($valarm4);
|
||||
|
||||
$tests[] = array($valarm4, new DateTime('2012-02-25 01:00:00'), new DateTime('2012-03-05 01:00:00'), false);
|
||||
$tests[] = array($valarm4, new DateTime('2012-03-25 01:00:00'), new DateTime('2012-04-05 01:00:00'), true);
|
||||
|
||||
// Relation to start time of event + repeat
|
||||
$valarm5 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm5->TRIGGER = '-P1D';
|
||||
$valarm5->TRIGGER['VALUE'] = 'DURATION';
|
||||
$valarm5->REPEAT = 10;
|
||||
$valarm5->DURATION = 'P1D';
|
||||
|
||||
$vevent5 = Sabre_VObject_Component::create('VEVENT');
|
||||
$vevent5->DTSTART = '20120301T130000Z';
|
||||
$vevent5->add($valarm5);
|
||||
|
||||
$tests[] = array($valarm5, new DateTime('2012-03-09 01:00:00'), new DateTime('2012-03-10 01:00:00'), true);
|
||||
|
||||
// Relation to start time of event + duration, but no repeat
|
||||
$valarm6 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm6->TRIGGER = '-P1D';
|
||||
$valarm6->TRIGGER['VALUE'] = 'DURATION';
|
||||
$valarm6->DURATION = 'P1D';
|
||||
|
||||
$vevent6 = Sabre_VObject_Component::create('VEVENT');
|
||||
$vevent6->DTSTART = '20120313T130000Z';
|
||||
$vevent6->add($valarm6);
|
||||
|
||||
$tests[] = array($valarm6, new DateTime('2012-03-01 01:00:00'), new DateTime('2012-04-01 01:00:00'), true);
|
||||
$tests[] = array($valarm6, new DateTime('2012-03-01 01:00:00'), new DateTime('2012-03-10 01:00:00'), false);
|
||||
|
||||
|
||||
// Relation to end time of event (DURATION instead of DTEND)
|
||||
$valarm7 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm7->TRIGGER = '-P1D';
|
||||
$valarm7->TRIGGER['VALUE'] = 'DURATION';
|
||||
$valarm7->TRIGGER['RELATED']= 'END';
|
||||
|
||||
$vevent7 = Sabre_VObject_Component::create('VEVENT');
|
||||
$vevent7->DTSTART = '20120301T130000Z';
|
||||
$vevent7->DURATION = 'P30D';
|
||||
$vevent7->add($valarm7);
|
||||
|
||||
$tests[] = array($valarm7, new DateTime('2012-02-25 01:00:00'), new DateTime('2012-03-05 01:00:00'), false);
|
||||
$tests[] = array($valarm7, new DateTime('2012-03-25 01:00:00'), new DateTime('2012-04-05 01:00:00'), true);
|
||||
|
||||
// Relation to end time of event (No DTEND or DURATION)
|
||||
$valarm7 = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm7->TRIGGER = '-P1D';
|
||||
$valarm7->TRIGGER['VALUE'] = 'DURATION';
|
||||
$valarm7->TRIGGER['RELATED']= 'END';
|
||||
|
||||
$vevent7 = Sabre_VObject_Component::create('VEVENT');
|
||||
$vevent7->DTSTART = '20120301T130000Z';
|
||||
$vevent7->add($valarm7);
|
||||
|
||||
$tests[] = array($valarm7, new DateTime('2012-02-25 01:00:00'), new DateTime('2012-03-05 01:00:00'), true);
|
||||
$tests[] = array($valarm7, new DateTime('2012-03-25 01:00:00'), new DateTime('2012-04-05 01:00:00'), false);
|
||||
|
||||
|
||||
return $tests;
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException Sabre_DAV_Exception
|
||||
*/
|
||||
public function testInTimeRangeInvalidComponent() {
|
||||
|
||||
$valarm = Sabre_VObject_Component::create('VALARM');
|
||||
$valarm->TRIGGER = '-P1D';
|
||||
$valarm->TRIGGER['RELATED'] = 'END';
|
||||
|
||||
$vjournal = Sabre_VObject_Component::create('VJOURNAL');
|
||||
$vjournal->add($valarm);
|
||||
|
||||
$valarm->isInTimeRange(new DateTime('2012-02-25 01:00:00'), new DateTime('2012-03-05 01:00:00'));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue