$this->idFromFixture('Member','admin') )); // This controller stuff is needed because LeftAndMain::MainMenu() inspects the current user's permissions $controller = new Controller(); $controller->setSession($session); $controller->pushCurrent(); $menuItems = singleton('CMSMain')->MainMenu(); $controller->popCurrent(); $classes = ClassInfo::subclassesFor("LeftAndMain"); foreach($menuItems as $menuItem) { $link = $menuItem->Link; if(preg_match('/^https?:\/\//',$link)) continue; $response = Director::test($link, null, $session); $this->assertType('HTTPResponse', $response, "$link should return a response object"); $this->assertEquals(200, $response->getStatusCode(), "$link should return 200 status code"); // Check that a HTML page has been returned $this->assertRegExp('/]*>/i', $response->getBody(), "$link should contain tag"); $this->assertRegExp('/]*>/i', $response->getBody(), "$link should contain tag"); $this->assertRegExp('/]*>/i', $response->getBody(), "$link should contain tag"); } } }