1
+ import copy
1
2
from unittest .mock import Mock , patch
3
+ from requests import Response
4
+
2
5
from utils .azure_users import AzureConnection , ROLE_FIELD_VALUES , AzureUser
3
6
from pytest import mark
4
7
14
17
],
15
18
)
16
19
def test_azure_connection_is_test_user (
17
- get_mock , field_name , field_value , is_test_user_expected_value ,
20
+ get_mock ,
21
+ field_name ,
22
+ field_value ,
23
+ is_test_user_expected_value ,
18
24
):
19
25
response_mock = Mock ()
20
26
response_mock .status_code = 200
@@ -33,7 +39,12 @@ def test_azure_connection_get_test_user_ids(get_mock):
33
39
response_mock = Mock ()
34
40
response_mock .status_code = 200
35
41
response_mock .json = Mock (
36
- return_value = {'value' : [{'objectId' : 'ID1' }, {'objectId' : 'ID2' },]}
42
+ return_value = {
43
+ 'value' : [
44
+ {'objectId' : 'ID1' },
45
+ {'objectId' : 'ID2' },
46
+ ]
47
+ }
37
48
)
38
49
get_mock .return_value = response_mock
39
50
@@ -120,7 +131,10 @@ def test_get_groups_and_users(get_mock):
120
131
{'objectId' : 'user-id1' },
121
132
],
122
133
},
123
- {'displayName' : 'test-group-3' , 'members' : [],},
134
+ {
135
+ 'displayName' : 'test-group-3' ,
136
+ 'members' : [],
137
+ },
124
138
]
125
139
}
126
140
response_mock .json = Mock (return_value = return_value )
@@ -228,3 +242,26 @@ def test_remove_user_from_group(
228
242
get_group_id_by_group_name_mock .assert_called_once ()
229
243
get_user_mock .assert_called_once ()
230
244
assert expected_value == test_user
245
+
246
+
247
+ @patch ('utils.azure_users.AzureConnection.get_groups_and_users' )
248
+ @patch ('requests.get' )
249
+ def test_users_functions_should_returns_all_users (
250
+ get_mock , get_groups_and_users_mock
251
+ ):
252
+ first_response = Response ()
253
+ first_response .status_code = 200
254
+ first_response ._content = (
255
+ b'{"odata.nextLink":"nomatter&$skiptoken=X12872","value":[{"displayName":"Fake1",'
256
+ b'"otherMails":["[email protected] "],"objectId":"1"}]} '
257
+ )
258
+
259
+ second_response = copy .copy (first_response )
260
+ second_response .
_content = b'{"value":[{"displayName":"Fake2","otherMails":["[email protected] "],"objectId":"1"}]}'
261
+
262
+ get_mock .side_effect = [first_response , second_response ]
263
+ get_groups_and_users_mock .return_value = []
264
+
265
+ users = AzureConnection ().users ()
266
+
267
+ assert len (users ) == 2
0 commit comments