Coverage for tests/tests_api/organizations/organization_resources.py: 39%

44 statements  

« prev     ^ index     » next       coverage.py v7.6.2, created at 2024-10-10 03:02 +0300

1import pytest 

2from sotrans_models.models.resources.drivers import ( 

3 DriverCreateModel, 

4 DriverDBModel, 

5) 

6from sotrans_models.models.resources.trailers import ( 

7 TrailerCreateModel, 

8 TrailerDBModel, 

9) 

10from sotrans_models.models.resources.trucks import ( 

11 TruckCreateModel, 

12 TruckDBModel, 

13) 

14from sotrans_models.models.responses import GenericGetListResponse 

15 

16from ...conftest import APIDataStorage 

17from ...random_model import generate_models_json 

18from ...tests_api.auth import test_client, token 

19 

20 

21def test_create_driver(test_client): 

22 model_dump = generate_models_json(DriverCreateModel) 

23 response = test_client.post("/drivers", json=model_dump) 

24 assert response.status_code == 201 

25 APIDataStorage.driver = DriverDBModel(**response.json()) 

26 

27 

28@pytest.mark.dependency(depends=["test_create_org_positive"]) 

29def test_organization_drivers(test_client): 

30 response = test_client.get( 

31 f"/organizations/{APIDataStorage.org.id}/drivers" 

32 ) 

33 assert response.status_code == 200 

34 result = GenericGetListResponse[DriverDBModel](**response.json()) 

35 assert result.total == 1 

36 assert result.items[0].id == APIDataStorage.driver.id 

37 

38 

39def test_create_truck(test_client): 

40 model_dump = generate_models_json(TruckCreateModel) 

41 response = test_client.post("/trucks", json=model_dump) 

42 assert response.status_code == 201 

43 APIDataStorage.truck = TruckDBModel(**response.json()) 

44 

45 

46@pytest.mark.dependency(depends=["test_create_org_positive"]) 

47def test_organization_truck(test_client): 

48 response = test_client.get( 

49 f"/organizations/{APIDataStorage.org.id}/trucks" 

50 ) 

51 assert response.status_code == 200 

52 result = GenericGetListResponse[TruckDBModel](**response.json()) 

53 assert result.total == 1 

54 assert result.items[0].id == APIDataStorage.truck.id 

55 

56 

57def test_create_trailer(test_client): 

58 model_dump = generate_models_json(TrailerCreateModel) 

59 response = test_client.post("/trailers", json=model_dump) 

60 assert response.status_code == 201 

61 APIDataStorage.trailer = TrailerDBModel(**response.json()) 

62 

63 

64@pytest.mark.dependency(depends=["test_create_org_positive"]) 

65def test_organization_trailer(test_client): 

66 response = test_client.get( 

67 f"/organizations/{APIDataStorage.org.id}/trailers" 

68 ) 

69 assert response.status_code == 200 

70 result = GenericGetListResponse[TrailerDBModel](**response.json()) 

71 assert result.total == 1 

72 assert result.items[0].id == APIDataStorage.trailer.id