Skip to content

Test/dev 72 add tests for post comment import#172

Open
CaseAsLimbo wants to merge 11 commits into
mainfrom
test/DEV-72-add-tests-for-post-comment-import
Open

Test/dev 72 add tests for post comment import#172
CaseAsLimbo wants to merge 11 commits into
mainfrom
test/DEV-72-add-tests-for-post-comment-import

Conversation

@CaseAsLimbo

@CaseAsLimbo CaseAsLimbo commented May 26, 2026

Copy link
Copy Markdown

Изменения

  • Добавлены тесты для ручки POST /comment/import

Check-List

  • Вы проверили свой код перед отправкой запроса?
  • Вы написали тесты к реализованным функциям?
  • Вы не забыли применить форматирование black и isort для Back-End или Prettier для Front-End?

…дготовленных SQL-запросов и override_dbsession_in_route, мок для переопределения сессии ручки на тестовую сессию
…стройкой cascade, что дать алхимии понять в каком порядке их удалять, вне зависимости от связанных других таблиц
@CaseAsLimbo CaseAsLimbo requested a review from petrCher May 26, 2026 17:00
@CaseAsLimbo CaseAsLimbo linked an issue May 26, 2026 that may be closed by this pull request
@github-actions

Copy link
Copy Markdown

Code Coverage

Coverage Report
FileStmtsMissCoverMissing
rating_api
   __main__.py440%1–7
   exceptions.py43784%35–37, 48–50, 58
rating_api/models
   base.py64494%24–27
   db.py1641889%118, 120, 122, 124, 135, 174, 192, 202, 216, 225–227, 261, 275–287
rating_api/routes
   base.py16194%41
   comment.py1512981%77, 95, 144–145, 192, 265–266, 268–269, 277–282, 291, 298–300, 330, 353, 393–404, 431
   exc_handlers.py32391%36, 43, 50
   lecturer.py109992%72–73, 83, 89–90, 230, 238, 260, 266
rating_api/schemas
   base.py12467%6–9
   models.py155398%189, 191, 201
rating_api/utils
   mark.py880%1–20
TOTAL7929089% 

Summary

Tests Skipped Failures Errors Time
92 0 💤 0 ❌ 0 🔥 27.063s ⏱️

Comment thread .gitignore
.pyre/

# uv pocket manager
uv.lock

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

не забудь убрать

Comment thread tests/conftest.py
lecturers[-1].is_deleted = True
for lecturer in lecturers:
dbsession.add(lecturer)
dbsession.add_all(lecturers)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

лучше вернуть

Comment thread tests/conftest.py
"user_scopes": [{"id": 0, "name": "string", "comment": "string"}],
"indirect_groups": [{"id": 0, "name": "string", "parent_id": 0}],
"groups": [{"id": 0, "name": "string", "parent_id": 0}],
def authlib_user():

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

здесь аналогично прошлому пр исправить(по комментам прошлого)
p.s. см коммент на этот счет в отдельном комментарии в этом пр

def test_create_comment(client, dbsession, lecturers, body, lecturer_n, response_status):
params = {"lecturer_id": lecturers[lecturer_n].id}
post_response = client.post(url, json=body, params=params)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

не нужно

Comment thread rating_api/models/db.py
avatar_link: Mapped[str] = mapped_column(String, nullable=True, comment="Ссылка на аву препода")
timetable_id: Mapped[int]
comments: Mapped[list[Comment]] = relationship("Comment", back_populates="lecturer")
lecturer_user_comments: Mapped[list[LecturerUserComment]] = relationship(

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

пока убрать

status.HTTP_422_UNPROCESSABLE_CONTENT,
),
],
)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

тут точно больше тестов не надо? на неудачные кейсы? если нет, то все ок, сделал правильно

import logging

import pytest
from auth_lib.fastapi import UnionAuth

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

тоже не нужно

@petrCher

Copy link
Copy Markdown
Member

Смотри, сейчас у тебя два пр, дело в том, что ты поменял код в обоих пр приблизительно в одном и том же месте. В таком случае рекомендуется только в первом пр добавлять новый код, во втором код только решающий проблему только конкретного таска, предыдущий код надо подтягивать с помощью git rebase после успешного мерджа первого пр.
Также очень рекомендую давать названия пр не в стиле номера таска, а по тому, какую задачу он решает, номер таска все равно никто не запоминает, тем более ты его добавляешь в Development слева в пр. Например, информативное название этого таска "add tests for post comment import", почти как ты написал, но без лишнего

@petrCher

Copy link
Copy Markdown
Member

Также посмотри, пожалуйста, действительно ли ты закрыл все неудачные рейсы на тест импорта?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Написать тесты для ручки post comment/import

2 participants