refactor: split buspro ApiClient into domain clients
This commit is contained in:
1 parent
0a55544ca8
commit
b755a6f43e
52 files changed
+805
-695
No files matched your search
@@ -4,7 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Tests\Controller\Account;
|
||||
|
||||
use App\BusProNet\ApiClient;
|
||||
use App\BusProNet\Client\AccountClient;
|
||||
use App\BusProNet\Model\Notification;
|
||||
use App\BusProNet\Model\PersonalData;
|
||||
use App\Controller\Account\PersonalDataController;
|
||||
@@ -28,10 +28,10 @@ class PersonalDataControllerTest extends TestCase
|
||||
public function testIndexRendersNewsletterSubscribeCtaWhenNotSubscribed(): void
|
||||
{
|
||||
$controller = $this->createController(
|
||||
apiClient: $this->createMock(ApiClient::class),
|
||||
accountClient: $this->createMock(AccountClient::class),
|
||||
newsletterManager: $this->createMock(NewsletterManager::class),
|
||||
);
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->expects(self::once())
|
||||
->method('getPersonalData')
|
||||
->with('[email protected]', 'secret')
|
||||
@@ -59,10 +59,10 @@ class PersonalDataControllerTest extends TestCase
|
||||
public function testIndexStillTracksPendingNewsletterConfirmationWhenSubscribed(): void
|
||||
{
|
||||
$controller = $this->createController(
|
||||
apiClient: $this->createMock(ApiClient::class),
|
||||
accountClient: $this->createMock(AccountClient::class),
|
||||
newsletterManager: $this->createMock(NewsletterManager::class),
|
||||
);
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->expects(self::once())
|
||||
->method('getPersonalData')
|
||||
->with('[email protected]', 'secret')
|
||||
@@ -89,10 +89,10 @@ class PersonalDataControllerTest extends TestCase
|
||||
public function testNewsletterActionReturnsHtmxRedirectAndFlash(): void
|
||||
{
|
||||
$controller = $this->createController(
|
||||
apiClient: $this->createMock(ApiClient::class),
|
||||
accountClient: $this->createMock(AccountClient::class),
|
||||
newsletterManager: $this->createMock(NewsletterManager::class),
|
||||
);
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->expects(self::once())
|
||||
->method('getPersonalData')
|
||||
->with('[email protected]', 'secret')
|
||||
@@ -132,10 +132,10 @@ class PersonalDataControllerTest extends TestCase
|
||||
public function testNewsletterActionResendsPendingConfirmation(): void
|
||||
{
|
||||
$controller = $this->createController(
|
||||
apiClient: $this->createMock(ApiClient::class),
|
||||
accountClient: $this->createMock(AccountClient::class),
|
||||
newsletterManager: $this->createMock(NewsletterManager::class),
|
||||
);
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->expects(self::once())
|
||||
->method('getPersonalData')
|
||||
->with('[email protected]', 'secret')
|
||||
@@ -170,7 +170,7 @@ class PersonalDataControllerTest extends TestCase
|
||||
public function testIndexLocksTheEmailField(): void
|
||||
{
|
||||
$controller = $this->createController();
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->method('getPersonalData')
|
||||
->willReturn($this->createPersonalData('Mia', 'Muster'));
|
||||
|
||||
@@ -186,14 +186,14 @@ class PersonalDataControllerTest extends TestCase
|
||||
public function testIndexDoesNotSubmitTheFormWhenPersonalDataCouldNotBeLoaded(): void
|
||||
{
|
||||
$controller = $this->createController(
|
||||
apiClient: $this->createMock(ApiClient::class),
|
||||
accountClient: $this->createMock(AccountClient::class),
|
||||
form: $this->createMock(FormInterface::class),
|
||||
);
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->expects(self::once())
|
||||
->method('getPersonalData')
|
||||
->willReturn(new Notification(500, 'no such customer'));
|
||||
$controller->apiClient
|
||||
$controller->accountClient
|
||||
->expects(self::never())
|
||||
->method('updatePersonalData');
|
||||
|
||||
@@ -214,7 +214,7 @@ class PersonalDataControllerTest extends TestCase
|
||||
* expectations on, and reaches it again through the controller's public property.
|
||||
*/
|
||||
private function createController(
|
||||
?ApiClient $apiClient = null,
|
||||
?AccountClient $accountClient = null,
|
||||
?NewsletterManager $newsletterManager = null,
|
||||
?FormInterface $form = null,
|
||||
): TestablePersonalDataController {
|
||||
@@ -236,7 +236,7 @@ class PersonalDataControllerTest extends TestCase
|
||||
->willReturn(false);
|
||||
|
||||
return new TestablePersonalDataController(
|
||||
$apiClient ?? $this->createStub(ApiClient::class),
|
||||
$accountClient ?? $this->createStub(AccountClient::class),
|
||||
$crypt,
|
||||
$this->createStub(BookingEditDataLoader::class),
|
||||
$this->createStub(ProfileCompletenessChecker::class),
|
||||
@@ -281,7 +281,7 @@ final class TestablePersonalDataController extends PersonalDataController
|
||||
public array $createFormOptions = [];
|
||||
|
||||
public function __construct(
|
||||
public readonly ApiClient $apiClient,
|
||||
public readonly AccountClient $accountClient,
|
||||
Crypt $crypt,
|
||||
BookingEditDataLoader $dataLoader,
|
||||
ProfileCompletenessChecker $completenessChecker,
|
||||
@@ -292,7 +292,7 @@ final class TestablePersonalDataController extends PersonalDataController
|
||||
public readonly FormInterface $form,
|
||||
) {
|
||||
parent::__construct(
|
||||
$apiClient,
|
||||
$accountClient,
|
||||
$crypt,
|
||||
$dataLoader,
|
||||
$completenessChecker,
|
||||
|
||||
Reference in new issue
Block a user