Szort: Logowanie użytkownika w Symfony w testach integracyjnych

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();
Subscribe
Powiadom o
guest
0 komentarzy
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x