Skip to content

Commit 4158079

Browse files
committed
OXDEV-9078 OTP is not responsible for the redirect - remove redirect
1 parent 3b90224 commit 4158079

3 files changed

Lines changed: 1 addition & 25 deletions

File tree

src/Authentication/TwoFactorAuth/OTP/OtpFacade.php

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,10 @@
99

1010
namespace OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP;
1111

12-
use OxidEsales\Eshop\Core\Utils;
1312
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Notifier\Factory\OtpNotifierFactoryInterface;
1413
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Service\OtpChallengeStateServiceInterface;
1514
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Service\OtpCodeGeneratorServiceInterface;
1615
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Service\OtpCodeValidatorServiceInterface;
17-
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\Settings\TwoFASettingsInterface;
1816
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\Service\TwoFAServiceInterface;
1917

2018
class OtpFacade implements TwoFAServiceInterface
@@ -24,8 +22,6 @@ public function __construct(
2422
private OtpCodeValidatorServiceInterface $codeValidator,
2523
private OtpCodeGeneratorServiceInterface $codeGenerator,
2624
private OtpNotifierFactoryInterface $notifierFactory,
27-
private TwoFASettingsInterface $settings,
28-
private Utils $utils,
2925
) {
3026
}
3127

@@ -48,8 +44,6 @@ public function triggerChallenge(string $userId): void
4844

4945
$this->stateService->createChallengeState($userId, $code);
5046
$this->notifierFactory->create($userId)->notify($userId, $code);
51-
52-
$this->utils->redirect($this->settings->getVerificationUrl());
5347
}
5448

5549
public function invalidateChallenge(string $userId): void

src/Authentication/TwoFactorAuth/OTP/services.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,5 @@ services:
77
_defaults:
88
autowire: true
99
public: false
10-
bind:
11-
OxidEsales\Eshop\Core\Utils: '@=service("OxidEsales\\SecurityModule\\Core\\Registry").getUtils()'
1210

1311
OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\OtpFacade: ~

tests/Unit/Authentication/TwoFactorAuth/OTP/OtpFacadeTest.php

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,14 @@
1010
namespace OxidEsales\SecurityModule\Tests\Unit\Authentication\TwoFactorAuth\OTP;
1111

1212
use DateTimeImmutable;
13-
use OxidEsales\Eshop\Core\Utils;
1413
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Notifier\Factory\OtpNotifierFactoryInterface;
1514
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Notifier\OtpNotifierInterface;
1615
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\OtpFacade;
1716
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Service\OtpChallengeStateServiceInterface;
1817
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Service\OtpCodeGeneratorServiceInterface;
1918
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\Service\OtpCodeValidatorServiceInterface;
20-
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\Settings\TwoFASettingsInterface;
2119
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\OTP\DTO\OtpChallengeStateInterface;
22-
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\Service\TwoFAServiceInterface;
20+
use OxidEsales\SecurityModule\Authentication\TwoFactorAuth\Exception\InvalidCodeException;
2321
use PHPUnit\Framework\Attributes\Test;
2422
use PHPUnit\Framework\TestCase;
2523

@@ -170,20 +168,10 @@ public function triggerChallengeGeneratesCodeCreatesStateAndNotifies(): void
170168
$notifierFactoryStub = $this->createStub(OtpNotifierFactoryInterface::class);
171169
$notifierFactoryStub->method('create')->willReturn($notifierSpy);
172170

173-
$settingsStub = $this->createStub(TwoFASettingsInterface::class);
174-
$settingsStub->method('getVerificationUrl')->willReturn($verificationUrl = uniqid());
175-
176-
$utilsSpy = $this->createMock(Utils::class);
177-
$utilsSpy->expects($this->once())
178-
->method('redirect')
179-
->with($verificationUrl);
180-
181171
$sut = $this->getSut(
182172
stateService: $stateServiceSpy,
183173
codeGenerator: $codeGeneratorStub,
184174
notifierFactory: $notifierFactoryStub,
185-
settings: $settingsStub,
186-
utils: $utilsSpy,
187175
);
188176

189177
$sut->triggerChallenge(userId: $userId);
@@ -194,16 +182,12 @@ private function getSut(
194182
OtpCodeValidatorServiceInterface $codeValidator = null,
195183
OtpCodeGeneratorServiceInterface $codeGenerator = null,
196184
OtpNotifierFactoryInterface $notifierFactory = null,
197-
TwoFASettingsInterface $settings = null,
198-
Utils $utils = null,
199185
): OtpFacade {
200186
return new OtpFacade(
201187
stateService: $stateService ?? $this->createStub(OtpChallengeStateServiceInterface::class),
202188
codeValidator: $codeValidator ?? $this->createStub(OtpCodeValidatorServiceInterface::class),
203189
codeGenerator: $codeGenerator ?? $this->createStub(OtpCodeGeneratorServiceInterface::class),
204190
notifierFactory: $notifierFactory ?? $this->createStub(OtpNotifierFactoryInterface::class),
205-
settings: $settings ?? $this->createStub(TwoFASettingsInterface::class),
206-
utils: $utils ?? $this->createStub(Utils::class),
207191
);
208192
}
209193
}

0 commit comments

Comments
 (0)