Coverage for app/tests/utils/utils.py: 100%

15 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2026-03-24 11:40 +0000

1import random 

2import string 

3 

4from fastapi.testclient import TestClient 

5 

6from app.core.config import settings 

7 

8 

9def random_lower_string() -> str: 

10 return "".join(random.choices(string.ascii_lowercase, k=32)) 

11 

12 

13def random_email() -> str: 

14 return f"{random_lower_string()}@{random_lower_string()}.com" 

15 

16 

17def get_superuser_token_headers(client: TestClient) -> dict[str, str]: 

18 login_data = { 

19 "username": settings.FIRST_SUPERUSER, 

20 "password": settings.FIRST_SUPERUSER_PASSWORD, 

21 } 

22 r = client.post(f"{settings.API_V1_STR}/login/access-token", data=login_data) 

23 tokens = r.json() 

24 a_token = tokens["access_token"] 

25 headers = {"Authorization": f"Bearer {a_token}"} 

26 return headers