function testSummerTime() { TimeSource::mock(2014, 5, 1, 7, 0, 0); $user = new UserAccountModel(); $user->setEmail("*****@*****.**"); $user->setUsername("test"); $user->setPassword("password"); $userRepo = new UserAccountRepository(); $userRepo->create($user); $site = new SiteModel(); $site->setTitle("Test"); $site->setSlug("test"); $siteRepo = new SiteRepository(); $siteRepo->create($site, $user, array(), $this->getSiteQuotaUsedForTesting()); $event = new EventModel(); $event->setSummary("test"); $event->setDescription("test test"); $event->setStartAt($this->mktime(2014, 5, 10, 19, 0, 0, 'Europe/London')); $event->setEndAt($this->mktime(2014, 5, 10, 21, 0, 0, 'Europe/London')); $event->setUrl("http://www.info.com"); $event->setTicketUrl("http://www.tickets.com"); $eventRepository = new EventRepository(); $eventRepository->create($event, $site, $user); $event = $eventRepository->loadBySlug($site, $event->getSlug()); $this->assertEquals("test test", $event->getDescription()); $this->assertEquals("test", $event->getSummary()); $this->assertEquals("http://www.info.com", $event->getUrl()); $this->assertEquals("http://www.tickets.com", $event->getTicketUrl()); $startAtShouldBe = $this->mktime(2014, 5, 10, 18, 0, 0, 'UTC'); // Not summer time so London is +1 UTC! $startAtIs = clone $event->getStartAt(); $startAtIs->setTimezone(new \DateTimeZone('UTC')); $this->assertEquals($startAtShouldBe->format("c"), $startAtIs->format("c")); $erb = new EventRepositoryBuilder(); $erb->setFreeTextsearch('cat'); $this->assertEquals(0, count($erb->fetchAll())); $erb = new EventRepositoryBuilder(); $erb->setFreeTextsearch('test'); $this->assertEquals(1, count($erb->fetchAll())); }
function testFreeTextSearch() { TimeSource::mock(2014, 5, 1, 7, 0, 0); $user = new UserAccountModel(); $user->setEmail("*****@*****.**"); $user->setUsername("test"); $user->setPassword("password"); $userRepo = new UserAccountRepository(); $userRepo->create($user); $site = new SiteModel(); $site->setTitle("Test"); $site->setSlug("test"); $siteRepo = new SiteRepository(); $siteRepo->create($site, $user, array(), $this->getSiteQuotaUsedForTesting()); $event = new EventModel(); $event->setSummary("test"); $event->setDescription("test test"); $event->setStartAt(getUTCDateTime(2014, 5, 10, 19, 0, 0, 'Europe/London')); $event->setEndAt(getUTCDateTime(2014, 5, 10, 21, 0, 0, 'Europe/London')); $event->setUrl("http://www.info.com"); $event->setTicketUrl("http://www.tickets.com"); $eventRepository = new EventRepository(); $eventRepository->create($event, $site, $user); ///////////// Test No Search $erb = new EventRepositoryBuilder(); $this->assertEquals(1, count($erb->fetchAll())); $erb = new EventRepositoryBuilder(); $this->assertEquals(1, $erb->fetchCount()); ///////////// Test Search Pass $erb = new EventRepositoryBuilder(); $erb->setFreeTextsearch("test"); $this->assertEquals(1, count($erb->fetchAll())); $erb = new EventRepositoryBuilder(); $erb->setFreeTextsearch("test"); $this->assertEquals(1, $erb->fetchCount()); ///////////// Test Search Fail $erb = new EventRepositoryBuilder(); $erb->setFreeTextsearch("eodueoth dlhtunkn ethh5f 8l79,35dheutn"); $this->assertEquals(0, count($erb->fetchAll())); $erb = new EventRepositoryBuilder(); $erb->setFreeTextsearch("eodueoth dlhtunkn ethh5f 8l79,35dheutn"); $this->assertEquals(0, $erb->fetchCount()); }