First step in breaking out cloud.py

Move cloud.py to a module init. Move policy with it. Update related unit tests. Also adds a patch to state machine test to prevent randomness in mock from failing test.
This commit is contained in:
tomdds
2020-01-26 13:01:37 -05:00
parent f08d53d7a0
commit d02d47615e
5 changed files with 12 additions and 8 deletions

View File

@@ -1,4 +1,4 @@
from atst.domain.csp.policy import AzurePolicyManager, AzurePolicy
from atst.domain.csp.cloud.policy import AzurePolicyManager, AzurePolicy
def test_portfolio_definitions():

View File

@@ -1,5 +1,6 @@
import pytest
import re
from unittest import mock
from tests.factories import (
PortfolioStateMachineFactory,
@@ -81,7 +82,10 @@ def test_state_machine_initialization(portfolio):
assert ["reset", "fail", create_trigger] == started_triggers
def test_fsm_transition_start(portfolio: Portfolio):
@mock.patch("atst.domain.csp.cloud.MockCloudProvider")
def test_fsm_transition_start(mock_cloud_provider, portfolio: Portfolio):
mock_cloud_provider._authorize.return_value = None
mock_cloud_provider._maybe_raise.return_value = None
sm: PortfolioStateMachine = PortfolioStateMachineFactory.create(portfolio=portfolio)
assert sm.portfolio
assert sm.state == FSMStates.UNSTARTED
@@ -103,7 +107,7 @@ def test_fsm_transition_start(portfolio: Portfolio):
]
# Should source all creds for portfolio? might be easier to manage than per-step specific ones
creds = {"username": "mock-cloud", "password": "shh"}
creds = {"username": "mock-cloud", "password": "shh"} # pragma: allowlist secret
if portfolio.csp_data is not None:
csp_data = portfolio.csp_data
else:
@@ -118,7 +122,7 @@ def test_fsm_transition_start(portfolio: Portfolio):
portfolio_data = {
"user_id": user_id,
"password": "jklfsdNCVD83nklds2#202",
"password": "jklfsdNCVD83nklds2#202", # pragma: allowlist secret
"domain_name": domain_name,
"first_name": ppoc.first_name,
"last_name": ppoc.last_name,
@@ -143,7 +147,6 @@ def test_fsm_transition_start(portfolio: Portfolio):
config = {"billing_account_name": "billing_account_name"}
for expected_state in expected_states:
print(expected_state)
collected_data = dict(
list(csp_data.items()) + list(portfolio_data.items()) + list(config.items())
)