mirror of
https://github.com/3ybactuk/marketplace-go-service-project.git
synced 2025-10-30 05:53:45 +03:00
2.1 KiB
2.1 KiB
Домашнее задание по модулю "Базы данных"
Необходимо развернуть БД PostgreSQL для сервиса loms. Реализовать слой Repository, в котором будут походы в БД
Основное задание
- Для сервиса loms реализовать в слое
Repositoryпоход в БД - Развернуть экземпляр БД PostgreSQL в отдельном контейнере
- Корректно использовать транзакции в операции создания заказа
- Реализовать автоматические миграции, накатывающие схему БД и/или тестовые данные
- SQL-код должен быть написан в виде raw. Без использования ORM или билдеров (можно sqlc)
Дополнительное задание
- Для БД поднять синхронную реплику. Балансировать read/write запросы между ними (write только в master, read в любую из реплик)
- Написать по одному интеграционному тесту на каждый SQL-запрос в репозитории сервиса loms. Не забыть накатывать тестовые данные в миграции, после прогона тестов - удалить данные из БД
- Реализовать SQL-запросы с помощью sqlc
Автоматические проверки
Ваше решение должно проходить автоматические проверки:
- Компиляция
- Линтер
- Unit-тесты
- Code coverage >40%
- Автотесты
Прохождение автоматических проверок влияет на итоговую оценку за домашнюю работу.
Дедлайны сдачи и проверки задания:
- 21 июня 23:59 (сдача) / 24 июня, 23:59 (проверка)