From d6f1cae9e921065245e778af59b99ef41ac394f8 Mon Sep 17 00:00:00 2001 From: Quentin BEY Date: Mon, 25 Nov 2024 14:44:34 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=9A(api)=20split=20API=20module=20in?= =?UTF-8?q?=20client/resource=5Fserver?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit To improve readability and code sharing we group all APIs into the same "api" module for each application. Next submodules might be "scim", "resource_server_scim", ... The only shared module is the "permissions" one for now. --- src/backend/core/api/client/__init__.py | 1 + src/backend/core/api/{ => client}/serializers.py | 0 src/backend/core/api/{ => client}/viewsets.py | 4 ++-- .../{resource_server_api => api/resource_server}/__init__.py | 0 .../resource_server}/serializers.py | 0 .../{resource_server_api => api/resource_server}/viewsets.py | 2 +- .../core/tests/resource_server_api/teams/test_update.py | 2 +- .../core/tests/team_accesses/test_api_team_accesses_update.py | 2 +- src/backend/core/tests/teams/test_core_api_teams_update.py | 2 +- src/backend/core/tests/test_api_contacts.py | 2 +- src/backend/core/tests/test_api_team_invitations.py | 2 +- src/backend/core/tests/test_api_users.py | 4 ++-- src/backend/mailbox_manager/api/client/__init__.py | 1 + src/backend/mailbox_manager/api/{ => client}/serializers.py | 2 +- src/backend/mailbox_manager/api/{ => client}/viewsets.py | 3 ++- .../tests/api/mailboxes/test_api_mailboxes_create.py | 3 +-- src/backend/mailbox_manager/urls.py | 2 +- src/backend/people/api_urls.py | 2 +- src/backend/people/resource_server_urls.py | 2 +- 19 files changed, 19 insertions(+), 17 deletions(-) create mode 100644 src/backend/core/api/client/__init__.py rename src/backend/core/api/{ => client}/serializers.py (100%) rename src/backend/core/api/{ => client}/viewsets.py (99%) rename src/backend/core/{resource_server_api => api/resource_server}/__init__.py (100%) rename src/backend/core/{resource_server_api => api/resource_server}/serializers.py (100%) rename src/backend/core/{resource_server_api => api/resource_server}/viewsets.py (98%) create mode 100644 src/backend/mailbox_manager/api/client/__init__.py rename src/backend/mailbox_manager/api/{ => client}/serializers.py (99%) rename src/backend/mailbox_manager/api/{ => client}/viewsets.py (98%) diff --git a/src/backend/core/api/client/__init__.py b/src/backend/core/api/client/__init__.py new file mode 100644 index 0000000..9b5b392 --- /dev/null +++ b/src/backend/core/api/client/__init__.py @@ -0,0 +1 @@ +"""People core client API endpoints""" diff --git a/src/backend/core/api/serializers.py b/src/backend/core/api/client/serializers.py similarity index 100% rename from src/backend/core/api/serializers.py rename to src/backend/core/api/client/serializers.py diff --git a/src/backend/core/api/viewsets.py b/src/backend/core/api/client/viewsets.py similarity index 99% rename from src/backend/core/api/viewsets.py rename to src/backend/core/api/client/viewsets.py index bb412b2..e3447db 100644 --- a/src/backend/core/api/viewsets.py +++ b/src/backend/core/api/client/viewsets.py @@ -17,8 +17,8 @@ from rest_framework import ( from rest_framework.permissions import AllowAny from core import models - -from . import permissions, serializers +from core.api import permissions +from core.api.client import serializers SIMILARITY_THRESHOLD = 0.04 diff --git a/src/backend/core/resource_server_api/__init__.py b/src/backend/core/api/resource_server/__init__.py similarity index 100% rename from src/backend/core/resource_server_api/__init__.py rename to src/backend/core/api/resource_server/__init__.py diff --git a/src/backend/core/resource_server_api/serializers.py b/src/backend/core/api/resource_server/serializers.py similarity index 100% rename from src/backend/core/resource_server_api/serializers.py rename to src/backend/core/api/resource_server/serializers.py diff --git a/src/backend/core/resource_server_api/viewsets.py b/src/backend/core/api/resource_server/viewsets.py similarity index 98% rename from src/backend/core/resource_server_api/viewsets.py rename to src/backend/core/api/resource_server/viewsets.py index 7df6b13..075a16c 100644 --- a/src/backend/core/resource_server_api/viewsets.py +++ b/src/backend/core/api/resource_server/viewsets.py @@ -10,9 +10,9 @@ from rest_framework import ( from core import models from core.api import permissions +from core.api.client.viewsets import Pagination from core.resource_server.mixins import ResourceServerMixin -from ..api.viewsets import Pagination from . import serializers diff --git a/src/backend/core/tests/resource_server_api/teams/test_update.py b/src/backend/core/tests/resource_server_api/teams/test_update.py index 94e1993..852f7d6 100644 --- a/src/backend/core/tests/resource_server_api/teams/test_update.py +++ b/src/backend/core/tests/resource_server_api/teams/test_update.py @@ -12,7 +12,7 @@ from rest_framework.status import ( from rest_framework.test import APIClient from core import factories -from core.resource_server_api import serializers +from core.api.resource_server import serializers pytestmark = pytest.mark.django_db diff --git a/src/backend/core/tests/team_accesses/test_api_team_accesses_update.py b/src/backend/core/tests/team_accesses/test_api_team_accesses_update.py index eef88b0..590e043 100644 --- a/src/backend/core/tests/team_accesses/test_api_team_accesses_update.py +++ b/src/backend/core/tests/team_accesses/test_api_team_accesses_update.py @@ -9,7 +9,7 @@ import pytest from rest_framework.test import APIClient from core import factories, models -from core.api import serializers +from core.api.client import serializers pytestmark = pytest.mark.django_db diff --git a/src/backend/core/tests/teams/test_core_api_teams_update.py b/src/backend/core/tests/teams/test_core_api_teams_update.py index 11d6e8b..81379e3 100644 --- a/src/backend/core/tests/teams/test_core_api_teams_update.py +++ b/src/backend/core/tests/teams/test_core_api_teams_update.py @@ -14,7 +14,7 @@ from rest_framework.status import ( from rest_framework.test import APIClient from core import factories -from core.api import serializers +from core.api.client import serializers pytestmark = pytest.mark.django_db diff --git a/src/backend/core/tests/test_api_contacts.py b/src/backend/core/tests/test_api_contacts.py index 097166d..12c4747 100644 --- a/src/backend/core/tests/test_api_contacts.py +++ b/src/backend/core/tests/test_api_contacts.py @@ -8,7 +8,7 @@ import pytest from rest_framework.test import APIClient from core import factories, models -from core.api import serializers +from core.api.client import serializers pytestmark = pytest.mark.django_db diff --git a/src/backend/core/tests/test_api_team_invitations.py b/src/backend/core/tests/test_api_team_invitations.py index 8f61519..a63c5ba 100644 --- a/src/backend/core/tests/test_api_team_invitations.py +++ b/src/backend/core/tests/test_api_team_invitations.py @@ -9,7 +9,7 @@ from rest_framework import status from rest_framework.test import APIClient from core import factories -from core.api import serializers +from core.api.client import serializers pytestmark = pytest.mark.django_db diff --git a/src/backend/core/tests/test_api_users.py b/src/backend/core/tests/test_api_users.py index ae858ee..e321679 100644 --- a/src/backend/core/tests/test_api_users.py +++ b/src/backend/core/tests/test_api_users.py @@ -14,8 +14,8 @@ from rest_framework.status import ( from rest_framework.test import APIClient from core import factories, models -from core.api import serializers -from core.api.viewsets import Pagination +from core.api.client import serializers +from core.api.client.viewsets import Pagination from core.factories import TeamAccessFactory from mailbox_manager.factories import MailDomainAccessFactory diff --git a/src/backend/mailbox_manager/api/client/__init__.py b/src/backend/mailbox_manager/api/client/__init__.py new file mode 100644 index 0000000..9d09cad --- /dev/null +++ b/src/backend/mailbox_manager/api/client/__init__.py @@ -0,0 +1 @@ +"""Mailbox manager client API module.""" diff --git a/src/backend/mailbox_manager/api/serializers.py b/src/backend/mailbox_manager/api/client/serializers.py similarity index 99% rename from src/backend/mailbox_manager/api/serializers.py rename to src/backend/mailbox_manager/api/client/serializers.py index d8e87d3..15a9cc8 100644 --- a/src/backend/mailbox_manager/api/serializers.py +++ b/src/backend/mailbox_manager/api/client/serializers.py @@ -4,7 +4,7 @@ import json from rest_framework import exceptions, serializers -from core.api.serializers import UserSerializer +from core.api.client.serializers import UserSerializer from core.models import User from mailbox_manager import enums, models diff --git a/src/backend/mailbox_manager/api/viewsets.py b/src/backend/mailbox_manager/api/client/viewsets.py similarity index 98% rename from src/backend/mailbox_manager/api/viewsets.py rename to src/backend/mailbox_manager/api/client/viewsets.py index 3756f16..5172e25 100644 --- a/src/backend/mailbox_manager/api/viewsets.py +++ b/src/backend/mailbox_manager/api/client/viewsets.py @@ -7,7 +7,8 @@ from rest_framework import exceptions, filters, mixins, viewsets from core import models as core_models from mailbox_manager import enums, models -from mailbox_manager.api import permissions, serializers +from mailbox_manager.api import permissions +from mailbox_manager.api.client import serializers # pylint: disable=too-many-ancestors diff --git a/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_create.py b/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_create.py index 41896a8..ad9bb69 100644 --- a/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_create.py +++ b/src/backend/mailbox_manager/tests/api/mailboxes/test_api_mailboxes_create.py @@ -8,7 +8,6 @@ from logging import Logger from unittest import mock from django.test.utils import override_settings -from django.utils.translation import gettext_lazy as _ import pytest import responses @@ -19,7 +18,7 @@ from rest_framework.test import APIClient from core import factories as core_factories from mailbox_manager import enums, factories, models -from mailbox_manager.api import serializers +from mailbox_manager.api.client import serializers pytestmark = pytest.mark.django_db diff --git a/src/backend/mailbox_manager/urls.py b/src/backend/mailbox_manager/urls.py index a024fe8..2833373 100644 --- a/src/backend/mailbox_manager/urls.py +++ b/src/backend/mailbox_manager/urls.py @@ -4,7 +4,7 @@ from django.urls import include, path, re_path from rest_framework.routers import DefaultRouter -from mailbox_manager.api import viewsets +from mailbox_manager.api.client import viewsets maildomain_router = DefaultRouter() maildomain_router.register( diff --git a/src/backend/people/api_urls.py b/src/backend/people/api_urls.py index 451e3c0..7349545 100644 --- a/src/backend/people/api_urls.py +++ b/src/backend/people/api_urls.py @@ -5,7 +5,7 @@ from django.urls import include, path, re_path from rest_framework.routers import DefaultRouter -from core.api import viewsets +from core.api.client import viewsets from core.authentication.urls import urlpatterns as oidc_urls from core.resource_server.urls import urlpatterns as resource_server_urls diff --git a/src/backend/people/resource_server_urls.py b/src/backend/people/resource_server_urls.py index b775b01..0785f7c 100644 --- a/src/backend/people/resource_server_urls.py +++ b/src/backend/people/resource_server_urls.py @@ -4,8 +4,8 @@ from django.urls import include, path from rest_framework.routers import DefaultRouter +from core.api.resource_server import viewsets from core.resource_server.urls import urlpatterns as resource_server_urls -from core.resource_server_api import viewsets # - Main endpoints # Contacts will be added later