public function testCreateEventFromShows() { $s1 = new Show(); $s1->setName('Test Show 1'); $s1->setSlug('test-show-1'); $p1 = new Performance(); $p1->setStartDate(new \DateTime('2013-04-01')); $p1->setEndDate(new \DateTime('2013-04-02')); $p1->setTime(new \DateTime('19:30')); $p1->setShow($s1); $s1->addPerformance($p1); $s2 = new Show(); $s2->setName('Test Show 2'); $s2->setSlug('test-show-2'); $p2 = new Performance(); $p2->setStartDate(new \DateTime('2013-02-10')); $p2->setEndDate(new \DateTime('2013-02-15')); $p2->setTime(new \DateTime('19:45')); $p2->setShow($s2); $s2->addPerformance($p2); $p3 = new Performance(); $p3->setStartDate(new \DateTime('2013-02-15')); $p3->setEndDate(new \DateTime('2013-02-15')); $p3->setTime(new \DateTime('14:30')); $p3->setShow($s2); $s2->addPerformance($p3); $events = $this->diaryHelper->createEventsFromShows(array($s1, $s2)); $this->assertEquals(3, count($events)); $this->assertEquals(new \DateTime('2013-04-01'), $events[0]->getStartDate()); $this->assertEquals(new \DateTime('2013-02-10'), $events[1]->getStartDate()); $this->assertEquals(new \DateTime('2013-02-15'), $events[2]->getStartDate()); }