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