efgraph / ugc_sprint_2

Спринт 9. Финальный спринт командного проекта по UGC
0 stars 0 forks source link

Code review #1

Open BigDeepBlue opened 1 year ago

BigDeepBlue commented 1 year ago

Этот спринт довольно-таки масштабный с большим количеством заданий. Я часть из них не смог найти.

  1. Поискал по README и не нашел, вот этого пункта задания:

    Результаты тестирования скорости работы с хранилищем в формате .md файла (README.md).

  2. API должно быть покрыто тестами. Хотя бы основная логика. Покрытие тестами - неотъемлемая часть разработки, без этого вообще никуда.
  3. В конфиге Github Actions .github/workflows/blank.yml необходимо немного доработать. В задании было:

    Добавить отправку сообщения об успешности прохождения CI в телеграм.

  4. А где же конфиг logstash? Разворачивание ELK было одним из заданий спринта.
  5. В этом месте и в этом рекомендую применять https://docs.python.org/3/library/http.html#http.HTTPStatus, вместо явного указания кодов ответов сервера.
  6. В Swagger документации в эндпоинтах далеко не везде указаны response_model и https://fastapi.tiangolo.com/tutorial/path-operation-configuration/?h=description#summary-and-description
  7. Интересные 2 функции. Жаль, что нигде не используются в проекте.
  8. В API получается, что каждый авторизованный пользователь может отправить данные за другого пользователя, т.к. user_id приходит в теле post запроса. Вот интересный пример хорошей реализации авторизации в FastAPI
  9. В API должен быть реализован CRUD лайков, закладок и рецензий. В данный момент только лайки и комментарии и только добавление. Комментарии часто редактируют и даже удаляют, не говоря уже о рецензиях.
  10. В лайках не контролируются дубли. Т.е. один пользователь может поставить сколько угодно оценок фильму, что крайне плохо.
  11. Вот это совсем лишнее в проекте.
BigDeepBlue commented 1 year ago

LGTM