Skip to content

PET project with a small api web service. Runs recipe website.

Notifications You must be signed in to change notification settings

Sectumsempr/pet-fastapi-async-db

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

PET project with a small api web service. Runs recipe website.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages