From 0f2df832285db8281200c226f3a15befd91da028 Mon Sep 17 00:00:00 2001 From: Jakub Miazek Date: Sat, 17 Feb 2024 19:33:33 +0100 Subject: [PATCH] add import xlsx test --- tests/api/test_import_xlsx.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 tests/api/test_import_xlsx.py diff --git a/tests/api/test_import_xlsx.py b/tests/api/test_import_xlsx.py new file mode 100644 index 0000000..5ea68cd --- /dev/null +++ b/tests/api/test_import_xlsx.py @@ -0,0 +1,27 @@ +from anyio import Path + +import pytest +from fastapi import status +from httpx import AsyncClient + +# Integration tests +pytestmark = pytest.mark.anyio + + +async def test_import_animals(client: AsyncClient): + # Arrange + expected_status = status.HTTP_201_CREATED + headers = {"Content-type": "multipart/form-data; boundary={}"} + + path = Path("tests/api/nonsense.xlsx") + + _bytes = await path.read_bytes() + + response = await client.post( + "/nonsense/import", + files={"xlsx": ("nonsense.xlsx", _bytes)}, + headers=headers, + ) + + assert response.status_code == expected_status + assert response.json() == {'filename': 'nonsense.xlsx', 'nonsense_records': 10}