diff --git a/atst/domain/csp/cloud/mock_cloud_provider.py b/atst/domain/csp/cloud/mock_cloud_provider.py index 414b0550..7baa2003 100644 --- a/atst/domain/csp/cloud/mock_cloud_provider.py +++ b/atst/domain/csp/cloud/mock_cloud_provider.py @@ -28,7 +28,9 @@ from .models import ( PrincipalAdminRoleCSPPayload, PrincipalAdminRoleCSPResult, SubscriptionCreationCSPPayload, + SubscriptionCreationCSPResult, SubscriptionVerificationCSPPayload, + SuscriptionVerificationCSPResult, TaskOrderBillingCreationCSPPayload, TaskOrderBillingCreationCSPResult, TaskOrderBillingVerificationCSPPayload, @@ -112,15 +114,27 @@ class MockCloudProvider(CloudProviderInterface): return csp_environment_id def create_subscription(self, payload: SubscriptionCreationCSPPayload): - pass + return self.create_subscription_creation(payload) def create_subscription_creation(self, payload: SubscriptionCreationCSPPayload): - pass + self._maybe_raise(self.NETWORK_FAILURE_PCT, self.NETWORK_EXCEPTION) + self._maybe_raise(self.SERVER_FAILURE_PCT, self.SERVER_EXCEPTION) + self._maybe_raise(self.UNAUTHORIZED_RATE, self.AUTHORIZATION_EXCEPTION) + + return SubscriptionCreationCSPResult( + subscription_verify_url="https://zombo.com", subscription_retry_after=10 + ) def create_subscription_verification( self, payload: SubscriptionVerificationCSPPayload ): - pass + self._maybe_raise(self.NETWORK_FAILURE_PCT, self.NETWORK_EXCEPTION) + self._maybe_raise(self.SERVER_FAILURE_PCT, self.SERVER_EXCEPTION) + self._maybe_raise(self.UNAUTHORIZED_RATE, self.AUTHORIZATION_EXCEPTION) + + return SuscriptionVerificationCSPResult( + subscription_id="subscriptions/60fbbb72-0516-4253-ab18-c92432ba3230" + ) def create_atat_admin_user(self, auth_credentials, csp_environment_id): self._authorize(auth_credentials) diff --git a/atst/domain/csp/cloud/models.py b/atst/domain/csp/cloud/models.py index 2fd422d4..db3efa05 100644 --- a/atst/domain/csp/cloud/models.py +++ b/atst/domain/csp/cloud/models.py @@ -418,7 +418,7 @@ class SubscriptionCreationCSPPayload(BaseCSPPayload): class SubscriptionCreationCSPResult(AliasModel): subscription_verify_url: str - subscription_retry_after: str + subscription_retry_after: int class Config: fields = {