setName('test'); $token->setPurpose(Token::PURPOSE_LOGIN); $tokenDao = $this->getTokenDao(); $tokenDao->save($token); $expected = $token; $actual = $tokenDao->findByName($token->getName()); $this->assertEntitiesEqual($actual, $expected); } public function testRetrievingByInvalidName() { $tokenDao = $this->getTokenDao(); $actual = $tokenDao->findByName('rubbish'); $this->assertNull($actual); } public function testRetrievingByAdditionalDataAndPurpose() { $token = new Token(); $token->setName('test'); $token->setPurpose(Token::PURPOSE_LOGIN); $tokenDao = $this->getTokenDao(); $tokenDao->save($token); $expected = $token; $this->assertEntitiesEqual($expected, $tokenDao->findByAdditionalDataAndPurpose(null, Token::PURPOSE_LOGIN)); $this->assertNull($tokenDao->findByAdditionalDataAndPurpose(null, Token::PURPOSE_ACTIVATE)); } private function getTokenDao() { return new TokenDao($this->databaseConnection); } }