Skip to content

kaiwoch/pvz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Добрый день! У меня большая просьба к проверяющим. Если решение не проходит - пожалуйста, дайте фидбек по ошибкам, если это возможно, чтоб я мог проработать их - для меня это очень важно.

Небольшие отклонения от задания

  1. У ручки Login в API только 2 статус кода 200 и 401 в документации. Добавил к ним Bad Request (400).
  2. Ручка dummyLogin логинится через заранее созданных на этапе миграции пользователей для теста (dummy_moderator@test.com и dummy_employee@test.com), поэтому возвращает еще статус код 401.
  3. Сущность Пункт приёма заказов (ПВЗ) помимо прочих полей содержит также ID пользователя. На этапе проектирования сделал так, не успел переделать.
  4. Тестовое покрытие считал средним по usecase, storage, middlewares и delivery.
  5. Добавил чуть больше интеграционных тестов, которые проверяют граничные случаи.

Инструкция по запуску

Для работы потребуется docker-compose, goose(для удобства работы с миграциями), make

Порядок запуска приложения:

  1. В корневой директории выполните:
make start-windows
  1. Перейдите в директорию cmd и запустите приложение:
go run .

Сервер запустится на порту 8080.

Порядок запуска приложения (не используя make):

  1. В корневой директории выполните:
docker-compose -f .\docker-compose.dev.yml up -d
  1. Перейдите по пути internal\storage\migrations и выполните команды:
goose postgres "postgres://postgres:postgres@localhost:5432/postgres?sslmode=disable" up

goose postgres "postgres://postgres_test:postgres_test@localhost:5433/postgres_test?sslmode=disable" up
  1. Перейдите в директорию cmd и запустите приложение:
go run .

Сервер запустится на порту 8080.

Как запускать тесты?

Тесты лучше запускать через make.

run-all-tests

Во-первых, там используется репо для анализа покрытия тестов.

Во вторых, при интеграционном тестировании используется тестовая БД, которая сбрасывается откатом миграции.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors