/** test event on 5TH tue in month. **/
 function testFiveWeekInMonth2()
 {
     TimeSource::mock(2014, 4, 20, 14, 27, 0);
     $event = new EventModel();
     $event->setStartAt($this->mktime(2014, 4, 29, 18, 30, 0));
     $event->setEndAt($this->mktime(2014, 4, 29, 21, 0, 0));
     $eventSet = new EventRecurSetModel();
     $eventSet->setTimeZoneName('Europe/London');
     $newEvents = $eventSet->getNewMonthlyEventsOnLastDayInWeek($event, 6 * 31);
     $this->assertTrue(count($newEvents) >= 3);
     $this->assertEquals($this->mktime(2014, 5, 27, 18, 30, 0)->format('r'), $newEvents[0]->getStartAt()->format('r'));
     $this->assertEquals($this->mktime(2014, 5, 27, 21, 0, 0)->format('r'), $newEvents[0]->getEndAt()->format('r'));
     $this->assertEquals($this->mktime(2014, 6, 24, 18, 30, 0)->format('r'), $newEvents[1]->getStartAt()->format('r'));
     $this->assertEquals($this->mktime(2014, 6, 24, 21, 0, 0)->format('r'), $newEvents[1]->getEndAt()->format('r'));
     $this->assertEquals($this->mktime(2014, 7, 29, 18, 30, 0)->format('r'), $newEvents[2]->getStartAt()->format('r'));
     $this->assertEquals($this->mktime(2014, 7, 29, 21, 0, 0)->format('r'), $newEvents[2]->getEndAt()->format('r'));
 }