Files
mostovik-backend/tests/apps/core/test_openapi.py
Aleksandr Meshchriakov d5d184537f
Some checks failed
CI/CD Pipeline / Code Quality Checks (push) Successful in 1m52s
CI/CD Pipeline / Run Tests (push) Failing after 2m2s
CI/CD Pipeline / Build & Push Images (push) Has been skipped
Рефакторинг инфраструктуры и конфигурации проекта
- Перенесена структура Django-конфига в src/core и src/settings

- Унифицирована Docker-сборка и docker-compose для dev/prod

- Добавлены startup-checks (DB/Redis) и обновлены env-шаблоны

- Расширена OpenAPI-документация и ответы API

- Удалены устаревшие deploy/requirements/служебные скрипты

- Обновлены CI/CD, README и тесты
2026-02-18 13:25:01 +01:00

44 lines
1.3 KiB
Python

"""Tests for OpenAPI helpers."""
from __future__ import annotations
from django.test import SimpleTestCase, override_settings
from drf_yasg import openapi
from rest_framework import serializers
from apps.core.openapi import _get_status_description, api_docs, swagger_tag
class DummySerializer(serializers.Serializer):
name = serializers.CharField()
class OpenAPIDocsTest(SimpleTestCase):
def test_get_status_description_default(self):
self.assertEqual(_get_status_description(418), "HTTP 418")
def test_api_docs_builds_responses(self):
decorator = api_docs(
summary="Test",
description="Desc",
responses={
200: DummySerializer,
404: "Not found",
400: openapi.Response(description="Bad request"),
},
tags=["tag"],
)
def view(_request):
return None
decorated = decorator(view)
self.assertTrue(callable(decorated))
def test_swagger_tag_default_russian(self):
self.assertEqual(swagger_tag("Пользователь", "User"), "Пользователь")
@override_settings(OPENAPI_USE_ENGLISH_TAGS=True)
def test_swagger_tag_english_in_dev_mode(self):
self.assertEqual(swagger_tag("Пользователь", "User"), "User")