I have the follow snipping code and I am trying to mock the utils.generic.generic_util.get_all_users
but wen I run the rest return the value as is was called from the original function:
Pytest:
def test_get_all_request(user_valid_data, valid_request_response, mocker_encoded_jwt, mocker):
response_model = models_user.UserInDB(**user_valid_data)
mocker.patch.object(UserClient,
"get_current_user",
autospec=True,
return_value=response_model
)
mocker.patch.object(UserClient,
"get_user",
autospec=True,
return_value=response_model
)
mocker.patch("utils.generic.generic_util.get_all_users", autospec=True,
return_value=True)
headers = {
constants.MED_GROUPS_HEADER: f'{constants.ADMIN_GROUP}',
constants.USER_HEADER: '[email protected]',
'Authorization': f'Bearer {mocker_encoded_jwt}'
}
response = client.get(f'/request', headers=headers)
assert response.status_code == 200
print("especias ", response.json())
assert response.json()[0]['attachment_path'] == valid_request_response[0]['attachment_path']
Endpoint:
@router.get("", status_code=200)
async def get_request_by(request_status: Optional[str] = None,
request_type: Optional[str] = None,
request_uuid: Optional[str] = None,
user_uuid: Optional[str] = None,
username: Optional[str] = None,
current_user: models_user.currentUser = Depends(User.get_current_user)):
resp = {}
if current_user and current_user.type == constants.SUPER_ADMIN:
resp = await get_all_users(Request, Request._request_tablename, request_uuid=request_uuid, user_uuid=user_uuid, username=username, request_status=request_status, request_type=request_type)
else:
raise HTTPException(status_code=401, detail=f'message: {current_user.username} not authorized.')
return resp