Skip to content

Latest commit

 

History

History
48 lines (30 loc) · 1.76 KB

README.md

File metadata and controls

48 lines (30 loc) · 1.76 KB

PET project с курсов по python

ТЗ

  • Сервис должен обладать полной документацией.

Итак, реализуйте API приложения кулинарной книги. У пользователя будет несколько экранов.

Первый - он видит таблицу со списком всех рецептов в базе. В таблице такие поля:

  • название

  • количество просмотров

  • время готовки (в минутах)

Рецепты отсортированы по популярности (количество просмотров - сколько раз открыли детальный рецепт) - чем чаще открывают рецепт, тем он популярнее. В случае совпадения значений сортировать по времени готовки.

Второй - он видит детальную информацию по каждому рецепту:

  • название

  • время готовки

  • список ингредиентов

  • текстовое описание

Напишите тесты на сервис.

Реализация

python3.9

Задача реализована с помощью FastApi в асинхронной манере, использована СУБД MySQL, ORM sqlalchemy. Тесты написаны с помощью pytest. Веб-приложение запускается через ASGI web server - uvicorn.

Для запуска:

python main.py

Документация swagger (при запущенном сервере):

service_documentation

Тесты:

pytest tests/test_main.py