/**
  * Test fetching a token
  *
  * @depends testValidTokenGenerationWithBasicFields
  *
  * @param Token $generatedToken Previously generated Token
  */
 public function testTokenGetWithBasicFields(Token $generatedToken)
 {
     $retrievedToken = $this->tokenService->get($generatedToken->getHash(), $generatedToken->getScope(), $generatedToken->getOwnerType(), $generatedToken->getOwnerId());
     $this->assertInstanceOf(get_class(new Token()), $retrievedToken, '$retrievedToken is not instanceof Token.');
     $this->assertEquals($generatedToken->getScope(), $retrievedToken->getScope(), 'Scope is not the same as set');
     $this->assertEquals($generatedToken->getOwnerType(), $retrievedToken->getOwnerType(), 'Owner type is not the same as set');
     $this->assertEquals($generatedToken->getOwnerId(), $retrievedToken->getOwnerId(), 'Owner ID is not the same as set');
     $this->assertInstanceOf('\\DateTime', $retrievedToken->getCreatedAt(), 'Created time is not a DateTime');
     $this->assertEquals($generatedToken->getCreatedAt()->getTimestamp(), $retrievedToken->getCreatedAt()->getTimestamp(), 'Created time is not correct');
     $this->assertInstanceOf('\\DateTime', $retrievedToken->getModifiedAt(), 'Modified time is not a DateTime');
     $this->assertEquals($generatedToken->getModifiedAt()->getTimestamp(), $retrievedToken->getModifiedAt()->getTimestamp(), 'Modified time is not correct');
     $this->assertEquals($generatedToken->getUsesMax(), 1, 'Max uses is not the default');
     $this->assertNull($retrievedToken->getExpiresAt(), '$expiresAt is not null');
     $this->assertEmpty($generatedToken->getData(), '$data is not empty');
 }