From 683f207d4a71ae3505b015fe4972a5a58ba0a509 Mon Sep 17 00:00:00 2001 From: Bruno Alla Date: Tue, 31 Dec 2024 13:18:39 +0000 Subject: [PATCH 1/2] Move API tests into a package Mirroring the structure of the code being tested --- hooks/post_gen_project.py | 4 +--- .../{{cookiecutter.project_slug}}/users/tests/api/__init__.py | 0 .../users/tests/{ => api}/test_swagger.py | 0 .../users/tests/{test_drf_urls.py => api/test_urls.py} | 0 .../users/tests/{test_drf_views.py => api/test_views.py} | 0 5 files changed, 1 insertion(+), 3 deletions(-) create mode 100644 {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/__init__.py rename {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/{ => api}/test_swagger.py (100%) rename {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/{test_drf_urls.py => api/test_urls.py} (100%) rename {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/{test_drf_views.py => api/test_views.py} (100%) diff --git a/hooks/post_gen_project.py b/hooks/post_gen_project.py index ca1ffad3..c4934e63 100644 --- a/hooks/post_gen_project.py +++ b/hooks/post_gen_project.py @@ -433,9 +433,7 @@ def remove_aws_dockerfile(): def remove_drf_starter_files(): os.remove(os.path.join("config", "api_router.py")) shutil.rmtree(os.path.join("{{cookiecutter.project_slug}}", "users", "api")) - os.remove(os.path.join("{{cookiecutter.project_slug}}", "users", "tests", "test_drf_urls.py")) - os.remove(os.path.join("{{cookiecutter.project_slug}}", "users", "tests", "test_drf_views.py")) - os.remove(os.path.join("{{cookiecutter.project_slug}}", "users", "tests", "test_swagger.py")) + shutil.rmtree(os.path.join("{{cookiecutter.project_slug}}", "users", "tests", "api")) def main(): diff --git a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/__init__.py b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/test_swagger.py b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_swagger.py similarity index 100% rename from {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/test_swagger.py rename to {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_swagger.py diff --git a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/test_drf_urls.py b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_urls.py similarity index 100% rename from {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/test_drf_urls.py rename to {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_urls.py diff --git a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/test_drf_views.py b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_views.py similarity index 100% rename from {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/test_drf_views.py rename to {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_views.py From 0434aea33f0edf54c1794d5e6e70388d7438741b Mon Sep 17 00:00:00 2001 From: Bruno Alla Date: Thu, 2 Jan 2025 20:20:08 +0000 Subject: [PATCH 2/2] Rename API docs tests to not mention Swagger --- .../users/tests/api/{test_swagger.py => test_openapi.py} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/{test_swagger.py => test_openapi.py} (81%) diff --git a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_swagger.py b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_openapi.py similarity index 81% rename from {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_swagger.py rename to {{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_openapi.py index 5db371db..cb3f19d3 100644 --- a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_swagger.py +++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/users/tests/api/test_openapi.py @@ -4,14 +4,14 @@ import pytest from django.urls import reverse -def test_swagger_accessible_by_admin(admin_client): +def test_api_docs_accessible_by_admin(admin_client): url = reverse("api-docs") response = admin_client.get(url) assert response.status_code == HTTPStatus.OK @pytest.mark.django_db -def test_swagger_ui_not_accessible_by_normal_user(client): +def test_api_docs_not_accessible_by_anonymous_users(client): url = reverse("api-docs") response = client.get(url) assert response.status_code == HTTPStatus.FORBIDDEN