init here
This commit is contained in:
86
autotest/cases/case_18_lessons_teacher_add.py
Normal file
86
autotest/cases/case_18_lessons_teacher_add.py
Normal file
@@ -0,0 +1,86 @@
|
||||
import json
|
||||
|
||||
TEST_NAME = "lessons:create"
|
||||
|
||||
|
||||
def run(context) -> None:
|
||||
path = f"/api/classes/{context.class_id}/lessons"
|
||||
payload_primary = {
|
||||
"дата": "2025-09-01",
|
||||
"название": "Алгебра",
|
||||
"домашнее задание": "Упражнения 1-3",
|
||||
}
|
||||
|
||||
status, _, _ = context.send_request("POST", path, body=payload_primary)
|
||||
context.expect(status == 401, f"expected 401, got {status}")
|
||||
|
||||
status, _, _ = context.send_request(
|
||||
"POST",
|
||||
f"/api/classes/{context.class_id + 999}/lessons",
|
||||
body=payload_primary,
|
||||
headers=context.make_auth(
|
||||
context.teacher_username,
|
||||
context.teacher_password,
|
||||
),
|
||||
)
|
||||
context.expect(
|
||||
status == 403,
|
||||
f"expected 403 for foreign class, got {status}",
|
||||
)
|
||||
|
||||
status, body, _ = context.send_request(
|
||||
"POST",
|
||||
path,
|
||||
body=payload_primary,
|
||||
headers=context.make_auth(
|
||||
context.teacher_username,
|
||||
context.teacher_password,
|
||||
),
|
||||
)
|
||||
context.expect(status == 201, f"expected 201, got {status}, body={body!r}")
|
||||
|
||||
data = json.loads(body)
|
||||
context.lesson_first_id = int(data[context.K_IDENTIFIER])
|
||||
context.lesson_first_date = payload_primary["дата"]
|
||||
context.lesson_first_title = payload_primary["название"]
|
||||
context.expect(
|
||||
int(data["идентификатор класса"]) == context.class_id,
|
||||
"lesson class mismatch",
|
||||
)
|
||||
context.expect(
|
||||
data["название"] == payload_primary["название"],
|
||||
"lesson title mismatch",
|
||||
)
|
||||
context.expect(
|
||||
data["дата"] == payload_primary["дата"],
|
||||
"lesson date mismatch",
|
||||
)
|
||||
|
||||
payload_secondary = {
|
||||
"дата урока": "2025-09-02",
|
||||
"тема": "Геометрия",
|
||||
"домашка": "Читать параграф 4",
|
||||
}
|
||||
|
||||
status, body, _ = context.send_request(
|
||||
"POST",
|
||||
path,
|
||||
body=payload_secondary,
|
||||
headers=context.make_auth(
|
||||
context.teacher_username,
|
||||
context.teacher_password,
|
||||
),
|
||||
)
|
||||
context.expect(
|
||||
status == 201,
|
||||
f"expected 201 for second lesson, got {status}",
|
||||
)
|
||||
|
||||
data = json.loads(body)
|
||||
context.lesson_second_id = int(data[context.K_IDENTIFIER])
|
||||
context.lesson_second_date = payload_secondary["дата урока"]
|
||||
context.lesson_second_title = payload_secondary["тема"]
|
||||
context.expect(
|
||||
data["домашнее задание"] == payload_secondary["домашка"],
|
||||
"secondary homework mismatch",
|
||||
)
|
||||
Reference in New Issue
Block a user