public function testConstruct()
{
$user = $this->getMock('eZ\\Publish\\Core\\MVC\\Symfony\\Security\\UserInterface');
$originalTokenType = 'FooBar';
$credentials = 'my_credentials';
$providerKey = 'key';
$roles = array('ROLE_USER', 'ROLE_TEST', new Role('ROLE_FOO'));
$expectedRoles = array();
foreach ($roles as $role) {
if (is_string($role)) {
$expectedRoles[] = new Role($role);
} else {
$expectedRoles[] = $role;
}
}
$token = new InteractiveLoginToken($user, $originalTokenType, $credentials, $providerKey, $roles);
$this->assertSame($user, $token->getUser());
$this->assertTrue($token->isAuthenticated());
$this->assertSame($originalTokenType, $token->getOriginalTokenType());
$this->assertSame($credentials, $token->getCredentials());
$this->assertSame($providerKey, $token->getProviderKey());
$this->assertEquals($expectedRoles, $token->getRoles());
}