Coverage for tests/tests_api/resources/trailers.py: 27%

26 statements  

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

1from sotrans_models.models.resources.trailers import TrailerDBModel 

2from sotrans_models.models.responses import GenericGetListResponse 

3 

4from ...conftest import APIDataStorage 

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

6 

7 

8def test_get_trailers(test_client): 

9 response = test_client.get("/trailers") 

10 assert response.status_code == 200 

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

12 assert result.total > 0 

13 for i in result.items: 

14 if i.id == APIDataStorage.trailer.id: 

15 return 

16 assert False 

17 

18 

19def test_get_trailer(test_client): 

20 response = test_client.get(f"/trailers/{APIDataStorage.trailer.id}") 

21 assert response.status_code == 200 

22 

23 

24def test_update_trailer(test_client): 

25 response = test_client.patch( 

26 f"/trailers/{APIDataStorage.trailer.id}", json={"brand": "TheTest"} 

27 ) 

28 assert response.status_code == 200 

29 assert TrailerDBModel(**response.json()).brand == "TheTest" 

30 

31 

32def test_delete_truck(test_client): 

33 response = test_client.delete(f"/trailers/{APIDataStorage.trailer.id}") 

34 assert response.status_code == 204 

35 deleted = test_client.get(f"/trailers/{APIDataStorage.trailer.id}") 

36 assert deleted.status_code == 404 

37 APIDataStorage.trailer = None