Skip to content

Законченное тестовое задание для ИТК-академии - RESTful API

License

Notifications You must be signed in to change notification settings

stoune2024/test_task

Repository files navigation

предупреждение

Файлы с чувствительной информацией были добавлены в данный репозиторий целенаправленно и осознанно с образовательной целью.

Автор осознает, что с целью безопасности в реальных проектах данная практика недопустима, и такие файлы должны храниться в приватных репозиториях, защищенных удаленных серверах, на облачных серверах или на локальном хранилище. Или просто игнорироваться Git'ом)

К таким файлам в данном проекте относятся:

1) .env

2) alembic.ini

Можно что-нибудь придумать чтобы скрыть URL для подключения к БД

3) compose.yml

Можно что-нибудь придумать чтобы скрыть переменные среды для подключения к БД

Таким образом, файлы под пунктами 2-3 не являются ошибкой, а скорее недоработкой в результате спешки.

PS Такую практику я не одобряю.

условия задания

Напишите приложение, которое по REST принимает запрос вида POST api/v1/wallets/<WALLET_UUID>/operation { operation_type: “DEPOSIT” or “WITHDRAW”, amount: 1000 } после выполнять логику по изменению счета в базе данных также есть возможность получить баланс кошелька GET api/v1/wallets/{WALLET_UUID} стек: FastAPI / Flask / Django Postgresql

Код должен следовать PEP8. Должны быть написаны миграции для базы данных. Обратите особое внимание проблемам при работе в конкурентной среде, параллельные запросы на изменения баланса одного кошелька должны работать корректно. Приложение должно запускаться в докер контейнере, база данных тоже, вся система должна подниматься с помощью docker-compose Эндпоинты должны быть покрыты тестами. Решенное задание залить на гитхаб, предоставить ссылку Все возникающие вопросы по заданию решать самостоятельно, по своему усмотрению.

About

Законченное тестовое задание для ИТК-академии - RESTful API

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published