public function testStrategy() { $strategy = new DefaultStrategy(); $this->assertTrue($strategy instanceof StrategyInterface); SessionHandler::disable(); $uri = empty($_SERVER['REQUEST_URI']) ? '' : $_SERVER['REQUEST_URI']; $query = empty($_SERVER['QUERY_STRING']) ? '' : $_SERVER['QUERY_STRING']; $md5 = md5($uri . $_SERVER['SCRIPT_NAME'] . $query); $this->assertEquals($md5, $strategy->strategy()); SessionHandler::enable(); $this->assertNotEmpty($strategy->strategy()); }
/** * @depends testGetStatus */ public function testEnableDisableStatus() { SessionHandler::enable(); $this->assertTrue(SessionHandler::getStatus()); $this->assertAttributeEquals(true, 'status', SessionHandler::class); SessionHandler::disable(); $this->assertFalse(SessionHandler::getStatus()); $this->assertAttributeEquals(false, 'status', SessionHandler::class); SessionHandler::setStatus(true); $this->assertTrue(SessionHandler::getStatus()); $this->assertAttributeEquals(true, 'status', SessionHandler::class); SessionHandler::setStatus(false); $this->assertFalse(SessionHandler::getStatus()); $this->assertAttributeEquals(false, 'status', SessionHandler::class); }
public function testStrategy() { //MobileDetection stub, to simulate a mobile device $mobilestub = $this->getMockBuilder('Mobile_Detect')->setMethods(array('isMobile', 'isTablet'))->getMock(); $mobilestub->method('isMobile')->willReturn(true); $mobilestub->method('isTablet')->willReturn(false); $strategy = new MobileStrategy($mobilestub); //expected string, with -mob in the end SessionHandler::disable(); $uri = empty($_SERVER['REQUEST_URI']) ? '' : $_SERVER['REQUEST_URI']; $query = empty($_SERVER['QUERY_STRING']) ? '' : $_SERVER['QUERY_STRING']; $md5 = md5($uri . $_SERVER['SCRIPT_NAME'] . $query) . '-mob'; $this->assertTrue($mobilestub instanceof \Mobile_Detect); $this->assertTrue($strategy instanceof StrategyInterface); $this->assertEquals($md5, $strategy->strategy()); }
/** * Do not use sessions when caching page. */ public function disableSession() { SessionHandler::disable(); return true; }