Skip to content

Сompleted the testing task for Effective Mobile company, which involved the realization of basic CRUD functionality.

Notifications You must be signed in to change notification settings

kaster3/Effective-Mobile-testing-2

Repository files navigation

Выполненное тестовое задание компании Effective-Mobile по созданию WEB приложения с основным CRUD функционалом.

Стек: FastAPI, PostgreSQL, SQLAlchemy, Alembic, Redis, Docker, Pytest, Asyncio

Что сделал:

  1. Реализация по заданию основных CRUD ручек модели Book
  2. Кэширование получения всех книг
  3. Unit тестирование и Интеграционное через pytest, а также с помощью библиотеки syrupy
  4. Контейнеризация
  5. Обработка ошибок
  6. Внедрение зависимостей
  7. Настроил pre-commit-file c хуками
  8. Запуск приложения на 4-ых gunicorn workers

Слои приложения:

  1. Handler - Принимаем запрос от пользователя и возвращаем его, дергая Service слой
  2. Service layer - Содержит основную бизнес логику и взаимодействует с классами Repository/CacheRepository
  3. Repository - Выполняет СRUD операции, промежуточный слой между БД и Бизнес логикой
  4. ORM model

Для запуска достаточно иметь Docker, склонировать репозиторий, настроить интерпретатор и ввести docker-compose up и проверяем результат по ссылке http://localhost:8000/docs (swagger документация)

.env файл открыт для тестовых целей

About

Сompleted the testing task for Effective Mobile company, which involved the realization of basic CRUD functionality.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published