Czasami zachodzi potrzeba zalogować użytkownika w teście integracyjnym, np jeżeli mamy sprawdzenie uprawnień na poziomie klasy Komendy czy przypadku użycia. Można to łatwo osiągnąć poprzez ręczne utworzenie tokena użytkownika i zapisanie go w TokenStorageInterface:
$userRepo = self::$container->get(UserRepositoryInterface::class);
$user = new User();
$user->setEmail(new Email('admin@example.com'));
$user->setPassword('pass');
$user->setRoles(['ROLE_ADMIN']);
$userRepo->save($user)
$tokenStorage = self::$container->get(
TokenStorageInterface::class
);
$tokenStorage->setToken(new PostAuthenticationToken($user, 'main', ['ROLE_ADMIN']));
return $user->getId();