public function getRSet() { $rset = new RSet(); $rset->addRRule($this->getRRule()); foreach ($this->getExdates() as $exdate) { $rset->addExDate($exdate); } if ($this->getRRule()->isFinite()) { return $rset; } else { return null; } }
public function testRSetInRset() { $rset = new RSet(); $rset->addRRule($rset); $rset->addDate('2016-03-21'); $this->assertEquals(array(date_create('2016-03-21')), $rset->getOccurrences(), 'Adding the RSet into itself does not explode'); $sub_rset = new RSet(); $sub_rset->addDate('2016-03-21 10:00'); $sub_rset->addDate('2016-03-21 11:00'); $rset = new RSet(); $rset->addRRule($sub_rset); $this->assertEquals(array(date_create('2016-03-21 10:00'), date_create('2016-03-21 11:00')), $rset->getOccurrences()); $rset->addExDate('2016-03-21 11:00'); $this->assertEquals(array(date_create('2016-03-21 10:00')), $rset->getOccurrences()); }