Мини-сервис хранения заметок. Предназначен для практики написания автотестов с использованием BDD и паттернов проектирования.
main.py— основной файл запуска FastAPI-приложенияdatabase.py— эмуляция хранения заметок в памятиmodels.py— описание моделей данных с использованием Pydanticrequirements.txt— список зависимостей проекта
Убедитесь, что у вас установлен Python 3.8+
python --versionЕсли Python не установлен: https://www.python.org/downloads/
Клонируйте проект на свой компьютер:
git clone https://github.com/dipFireWorker/PatternsAndBDD.git
cd PatternsAndBDDСоздайте виртуальное окружение (по желанию):
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # WindowsУстановите библиотеки:
pip install -r requirements.txtuvicorn main:app --reloadТеперь сервер доступен по адресу:
- Swagger UI: http://127.0.0.1:8000/docs
Получение списка всех заметок
Ответ:
[
{
"id": 1,
"title": "Пример",
"content": "Это пример заметки"
}
]Создание новой заметки
Пример запроса:
{
"title": "Новая заметка",
"content": "Контент заметки"
}Ответ:
{
"id": 2,
"title": "Новая заметка",
"content": "Контент заметки"
}Получение заметки по ID
Ответ:
{
"id": 2,
"title": "Новая заметка",
"content": "Контент заметки"
}Ошибки:
404 Not Found— если заметка не существует
Обновление заметки по ID
Пример запроса:
{
"title": "Обновленная заметка",
"content": "Новый текст"
}Ошибки:
404 Not Found— если заметка не существует
Удаление заметки по ID
Ответ:
{
"detail": "Note deleted"
}Ошибки:
404 Not Found— если заметка не существует