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
)
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):
request_body = {

View File

@ -18,6 +18,8 @@ from .models import (
ApplicationCSPResult,
BillingInstructionCSPPayload,
BillingInstructionCSPResult,
BillingOwnerCSPPayload,
BillingOwnerCSPResult,
BillingProfileCreationCSPPayload,
BillingProfileCreationCSPResult,
BillingProfileTenantAccessCSPResult,
@ -366,6 +368,13 @@ class MockCloudProvider(CloudProviderInterface):
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):
self._authorize(auth_credentials)

View File

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

View File

@ -26,6 +26,7 @@ class AzureStages(Enum):
PRINCIPAL_ADMIN_ROLE = "tenant principal admin"
TENANT_ADMIN_OWNERSHIP = "tenant admin ownership"
TENANT_PRINCIPAL_OWNERSHIP = "tenant principial ownership"
BILLING_OWNER = "billing owner"
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.TENANT_ADMIN_OWNERSHIP_CREATED,
FSMStates.TENANT_PRINCIPAL_OWNERSHIP_CREATED,
FSMStates.BILLING_OWNER_CREATED,
]
if portfolio.csp_data is not None: