tidy up the marker changes

This commit is contained in:
Ross
2024-08-05 13:20:29 +01:00
parent e46f843284
commit b73b43d155
24 changed files with 300 additions and 58 deletions
+54 -11
View File
@@ -30,6 +30,7 @@ from longs.models import (
from generic.models import CidUser, CidUserGroup, UserUserGroup
from django.contrib.auth.models import User
from django.core.exceptions import PermissionDenied
from rad.tests.test_helpers import AssertNotFound, create_cid_user_and_groups
@@ -150,7 +151,7 @@ def test_exams(db, client):
== 404
)
users_tested = 1
users_tested = 0
for cid_user in [cid_user_1001, cid_user_1000, user1]:
if isinstance(cid_user, CidUser):
testing_cid_user = True
@@ -550,16 +551,6 @@ def test_exams(db, client):
assert str(answer_lis[-1]).count("Not answered") == 5
## Load the mark overview page
#mark_overview_res = client.get(reverse(
# f"{exam.app_name}:mark_overview",
# kwargs={"pk": exam.pk},
# ))
#print(mark_overview_res.content)
#mark_overview_soup = BeautifulSoup(mark_overview_res.content, "html.parser")
#to_mark = mark_overview_soup.find("ul", {"id": "question-mark-list"}).find_all("li")
#assert len(to_mark) == 5
# Publish the results!
@@ -642,3 +633,55 @@ def test_exams(db, client):
generated_questions.pop(-1).delete()
users_tested = users_tested + 1
assert users_tested == 3
# Some quick tests to check for user access to the marking page
client.login(username="marker", password="test1234")
# Load the mark overview page
mark_overview_res = client.get(reverse(
f"{exam.app_name}:mark_overview",
kwargs={"pk": exam.pk},
))
assert mark_overview_res.status_code == 403
exam.markers.add(User.objects.get(username="marker"))
mark_overview_res = client.get(reverse(
f"{exam.app_name}:mark_overview",
kwargs={"pk": exam.pk},
))
assert mark_overview_res.status_code == 200
mark_overview_soup = BeautifulSoup(mark_overview_res.content, "html.parser")
to_mark = mark_overview_soup.find("ul", {"id": "question-mark-list"}).find_all("li")
assert len(to_mark) == 3
for n in range(0,3):
mark_question_res = client.get(reverse(
f"{exam.app_name}:mark",
kwargs={"exam_id": exam.pk, "sk": n},
))
assert mark_question_res.status_code == 200
mark_question_soup = BeautifulSoup(mark_question_res.content, "html.parser")
print(mark_question_soup)
#mark_links = mark_question_soup.find_all("a", {"class": "mark-answer-link"})
#assert len(mark_links) == 2
#for link in mark_links:
# mark_res = client.get(link["href"])
# assert mark_res.status_code == 200
mark_question_res = client.get(reverse(
f"{exam.app_name}:mark",
kwargs={"exam_id": exam.pk, "sk": 4},
))
assert mark_question_res.status_code == 404
mark_question_soup = BeautifulSoup(mark_question_res.content, "html.parser")