From a4958ae7ad9c8b066c089dc752ff50c847ce0bad Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Fri, 5 Mar 2021 11:17:34 +0100 Subject: [PATCH] [FrameworkBundle] Make the TestBrowserToken interchangeable with other tokens --- src/Symfony/Bundle/FrameworkBundle/KernelBrowser.php | 2 +- .../Bundle/FrameworkBundle/Test/TestBrowserToken.php | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/KernelBrowser.php b/src/Symfony/Bundle/FrameworkBundle/KernelBrowser.php index 40381e34aa310..dff1eea251041 100644 --- a/src/Symfony/Bundle/FrameworkBundle/KernelBrowser.php +++ b/src/Symfony/Bundle/FrameworkBundle/KernelBrowser.php @@ -120,7 +120,7 @@ public function loginUser($user, string $firewallContext = 'main'): self throw new \LogicException(sprintf('The first argument of "%s" must be instance of "%s", "%s" provided.', __METHOD__, UserInterface::class, \is_object($user) ? \get_class($user) : \gettype($user))); } - $token = new TestBrowserToken($user->getRoles(), $user); + $token = new TestBrowserToken($user->getRoles(), $user, $firewallContext); $token->setAuthenticated(true); $session = $this->getContainer()->get('session'); $session->set('_security_'.$firewallContext, serialize($token)); diff --git a/src/Symfony/Bundle/FrameworkBundle/Test/TestBrowserToken.php b/src/Symfony/Bundle/FrameworkBundle/Test/TestBrowserToken.php index 08f7b107d03a4..3343fbf0fb4cf 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Test/TestBrowserToken.php +++ b/src/Symfony/Bundle/FrameworkBundle/Test/TestBrowserToken.php @@ -21,13 +21,22 @@ */ class TestBrowserToken extends AbstractToken { - public function __construct(array $roles = [], UserInterface $user = null) + private $firewallName; + + public function __construct(array $roles = [], UserInterface $user = null, string $firewallName = 'main') { parent::__construct($roles); if (null !== $user) { $this->setUser($user); } + + $this->firewallName = $firewallName; + } + + public function getFirewallName(): string + { + return $this->firewallName; } public function getCredentials() pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy