This rule specifies an array of exception dates that will not be
included in a recurrence set.
public setExDates ( array $exDates ) | ||
$exDates | array | Array of dates that will not be included in the recurrence set. |
public function testSetExDates() { $rule = new Rule('FREQ=DAILY;COUNT=3', new \DateTime('2014-06-01')); $exDates = array(new DateExclusion(new \DateTime('2014-06-02'), false)); $rule->setExDates($exDates); $computed = $this->transformer->transform($rule); $this->assertCount(2, $computed); $this->assertEquals(new \DateTime('2014-06-01'), $computed[0]->getStart()); $this->assertEquals(new \DateTime('2014-06-03'), $computed[1]->getStart()); }
public function testGetString() { $this->rule->setFreq('YEARLY'); $this->rule->setCount(2); $this->rule->setInterval(2); $this->rule->setBySecond(array(30)); $this->rule->setByMinute(array(10)); $this->rule->setByHour(array(5, 15)); $this->rule->setByDay(array('SU', 'WE')); $this->rule->setByMonthDay(array(16, 22)); $this->rule->setByYearDay(array(201, 203)); $this->rule->setByWeekNumber(array(29, 32)); $this->rule->setByMonth(array(7, 8)); $this->rule->setBySetPosition(array(1, 3)); $this->rule->setWeekStart('TU'); $this->rule->setExDates(array('20140607', '20140620T010000Z', '20140620T010000')); $this->assertEquals('FREQ=YEARLY;COUNT=2;INTERVAL=2;BYSECOND=30;BYMINUTE=10;BYHOUR=5,15;BYDAY=SU,WE;BYMONTHDAY=16,22;BYYEARDAY=201,203;BYWEEKNO=29,32;BYMONTH=7,8;BYSETPOS=1,3;WKST=TU;EXDATE=20140607,20140620T010000Z,20140620T010000', $this->rule->getString()); }