add to mock and FSMstates

This commit is contained in:
dandds 2020-02-09 16:52:29 -05:00
parent 23aeb77821
commit 80894a5fb9
5 changed files with 13 additions and 2 deletions

View File

@ -798,7 +798,7 @@ class AzureCloudProvider(CloudProviderInterface):
graph_token, billing_admin_role_id, user_result.id graph_token, billing_admin_role_id, user_result.id
) )
return BillingOwnerCSPResult(id=user_result.id) return BillingOwnerCSPResult(billing_owner_id=user_result.id)
def _assign_billing_owner_role(self, graph_token, billing_admin_role_id, user_id): def _assign_billing_owner_role(self, graph_token, billing_admin_role_id, user_id):
request_body = { request_body = {

View File

@ -18,6 +18,8 @@ from .models import (
ApplicationCSPResult, ApplicationCSPResult,
BillingInstructionCSPPayload, BillingInstructionCSPPayload,
BillingInstructionCSPResult, BillingInstructionCSPResult,
BillingOwnerCSPPayload,
BillingOwnerCSPResult,
BillingProfileCreationCSPPayload, BillingProfileCreationCSPPayload,
BillingProfileCreationCSPResult, BillingProfileCreationCSPResult,
BillingProfileTenantAccessCSPResult, BillingProfileTenantAccessCSPResult,
@ -366,6 +368,13 @@ class MockCloudProvider(CloudProviderInterface):
return PrincipalAdminRoleCSPResult(**dict(id="principal_assignment_id")) return PrincipalAdminRoleCSPResult(**dict(id="principal_assignment_id"))
def create_billing_owner(self, payload: BillingOwnerCSPPayload):
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 BillingOwnerCSPResult(billing_owner_id="foo")
def create_or_update_user(self, auth_credentials, user_info, csp_role_id): def create_or_update_user(self, auth_credentials, user_info, csp_role_id):
self._authorize(auth_credentials) self._authorize(auth_credentials)

View File

@ -580,4 +580,4 @@ class BillingOwnerCSPPayload(BaseCSPPayload, UserMixin):
class BillingOwnerCSPResult(AliasModel): class BillingOwnerCSPResult(AliasModel):
id: str billing_owner_id: str

View File

@ -26,6 +26,7 @@ class AzureStages(Enum):
PRINCIPAL_ADMIN_ROLE = "tenant principal admin" PRINCIPAL_ADMIN_ROLE = "tenant principal admin"
TENANT_ADMIN_OWNERSHIP = "tenant admin ownership" TENANT_ADMIN_OWNERSHIP = "tenant admin ownership"
TENANT_PRINCIPAL_OWNERSHIP = "tenant principial ownership" TENANT_PRINCIPAL_OWNERSHIP = "tenant principial ownership"
BILLING_OWNER = "billing owner"
def _build_csp_states(csp_stages): def _build_csp_states(csp_stages):

View File

@ -113,6 +113,7 @@ def test_fsm_transition_start(mock_cloud_provider, portfolio: Portfolio):
FSMStates.PRINCIPAL_ADMIN_ROLE_CREATED, FSMStates.PRINCIPAL_ADMIN_ROLE_CREATED,
FSMStates.TENANT_ADMIN_OWNERSHIP_CREATED, FSMStates.TENANT_ADMIN_OWNERSHIP_CREATED,
FSMStates.TENANT_PRINCIPAL_OWNERSHIP_CREATED, FSMStates.TENANT_PRINCIPAL_OWNERSHIP_CREATED,
FSMStates.BILLING_OWNER_CREATED,
] ]
if portfolio.csp_data is not None: if portfolio.csp_data is not None: