Skip to content

Commit 9063e0b

Browse files
committed
fix: TT-131 extract MSAL client to method
1 parent 2fea9be commit 9063e0b

File tree

3 files changed

+17
-9
lines changed

3 files changed

+17
-9
lines changed

tests/time_tracker_api/users/users_namespace_test.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from pytest import mark
66

77

8-
@patch('msal.ConfidentialClientApplication', Mock())
8+
@patch('utils.azure_users.AzureConnection.get_msal_client', Mock())
99
@patch('utils.azure_users.AzureConnection.get_token', Mock())
1010
@patch(
1111
'utils.azure_users.AzureConnection.is_test_user', Mock(return_value=True)
@@ -27,6 +27,8 @@ def test_users_response_contains_expected_props(
2727
assert ['dummy-role'] == json.loads(response.data)[0]['roles']
2828

2929

30+
@patch('utils.azure_users.AzureConnection.get_msal_client', Mock())
31+
@patch('utils.azure_users.AzureConnection.get_token', Mock())
3032
@patch('utils.azure_users.AzureConnection.update_role')
3133
@mark.parametrize(
3234
'role_id,action', [('test', 'grant'), ('admin', 'revoke')],
@@ -53,6 +55,8 @@ def test_update_role_response_contains_expected_props(
5355
assert 'roles' in json.loads(response.data)
5456

5557

58+
@patch('utils.azure_users.AzureConnection.get_msal_client', Mock())
59+
@patch('utils.azure_users.AzureConnection.get_token', Mock())
5660
@patch('utils.azure_users.AzureConnection.update_role', new_callable=Mock)
5761
@mark.parametrize(
5862
'role_id,action,is_grant',

tests/utils/azure_users_test.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from pytest import mark
44

55

6-
@patch('msal.ConfidentialClientApplication', Mock())
6+
@patch('utils.azure_users.AzureConnection.get_msal_client', Mock())
77
@patch('utils.azure_users.AzureConnection.get_token', Mock())
88
@patch('requests.get')
99
@mark.parametrize(
@@ -26,7 +26,7 @@ def test_azure_connection_is_test_user(
2626
assert az_conn.is_test_user(test_user_id) == is_test_user_expected_value
2727

2828

29-
@patch('msal.ConfidentialClientApplication', Mock())
29+
@patch('utils.azure_users.AzureConnection.get_msal_client', Mock())
3030
@patch('utils.azure_users.AzureConnection.get_token', Mock())
3131
@patch('requests.get')
3232
def test_azure_connection_get_test_user_ids(get_mock):
@@ -42,7 +42,7 @@ def test_azure_connection_get_test_user_ids(get_mock):
4242
assert az_conn.get_test_user_ids() == ids
4343

4444

45-
@patch('msal.ConfidentialClientApplication', Mock())
45+
@patch('utils.azure_users.AzureConnection.get_msal_client', Mock())
4646
@patch('utils.azure_users.AzureConnection.get_token', Mock())
4747
@patch('utils.azure_users.AzureConnection.get_test_user_ids')
4848
@patch('utils.azure_users.AzureConnection.users')

utils/azure_users.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,18 @@ def __init__(self, id, name, email, roles):
6464

6565
class AzureConnection:
6666
def __init__(self, config=MSConfig):
67-
self.client = msal.ConfidentialClientApplication(
68-
config.CLIENT_ID,
69-
authority=config.AUTHORITY,
70-
client_credential=config.SECRET,
71-
)
7267
self.config = config
68+
self.client = self.get_msal_client()
7369
self.access_token = self.get_token()
7470

71+
def get_msal_client(self):
72+
client = msal.ConfidentialClientApplication(
73+
self.config.CLIENT_ID,
74+
authority=self.config.AUTHORITY,
75+
client_credential=self.config.SECRET,
76+
)
77+
return client
78+
7579
def get_token(self):
7680
response = self.client.acquire_token_for_client(
7781
scopes=self.config.SCOPE

0 commit comments

Comments
 (0)