Add tests
This commit is contained in:
parent
9f880baffd
commit
b8c4125b37
|
|
@ -132,94 +132,10 @@ class PersonsExportTestCase(ExportBaseTestCase):
|
|||
)
|
||||
self._check_export(wb, data, 3, 6)
|
||||
|
||||
# def test_export_feedback_with_cs_circle_pairs(self):
|
||||
# cs_circle_pairs = [
|
||||
# (
|
||||
# self.course_session_be.id,
|
||||
# [self.circle_fahrzeug.id, self.circle_reisen.id],
|
||||
# ),
|
||||
# (
|
||||
# self.course_session_zh.id,
|
||||
# [self.circle_reisen.id, self.circle_fahrzeug.id],
|
||||
# ),
|
||||
# ]
|
||||
# export_data = io.BytesIO(
|
||||
# export_feedback_with_circle_restriction(cs_circle_pairs, save_as_file=False)
|
||||
# )
|
||||
# wb = load_workbook(export_data)
|
||||
# self.assertEqual(len(wb.sheetnames), 2)
|
||||
# self.assertEqual(wb.sheetnames[0], "Fahrzeug")
|
||||
# self.assertEqual(wb.sheetnames[1], "Reisen")
|
||||
#
|
||||
# self._check_export(wb, self.expected_data_fahrzeug, 3, 12)
|
||||
#
|
||||
# wb.active = wb["Reisen"]
|
||||
# self._check_export(wb, self.expected_data_reisen, 2, 12)
|
||||
def test_cannot_export_other_session(self):
|
||||
wb = self._generate_workbook(self.test_trainer1, [self.course_session_zh.id])
|
||||
self.assertEqual(len(wb.sheetnames), 1)
|
||||
self.assertEqual(wb.sheetnames[0], "Test Zürich 2022 a")
|
||||
wb.active = wb["Test Zürich 2022 a"]
|
||||
|
||||
# def test_does_not_include_unsubmitted_feedback(self):
|
||||
# feedback = FeedbackResponse.objects.get(
|
||||
# circle=self.circle_reisen,
|
||||
# course_session=self.course_session_zh,
|
||||
# feedback_user=self.test_student2,
|
||||
# )
|
||||
#
|
||||
# feedback.submitted = False
|
||||
# feedback.save()
|
||||
#
|
||||
# wb = self._generate_workbook(
|
||||
# [self.course_session_be.id, self.course_session_zh.id]
|
||||
# )
|
||||
# self.assertEqual(len(wb.sheetnames), 1)
|
||||
# self.assertEqual(wb.sheetnames[0], "Fahrzeug")
|
||||
#
|
||||
# self._check_export(wb, self.expected_data_fahrzeug, 3, 12)
|
||||
#
|
||||
# def test_french_export(self):
|
||||
# activate("fr")
|
||||
# wb = self._generate_workbook(
|
||||
# [self.course_session_be.id, self.course_session_zh.id]
|
||||
# )
|
||||
#
|
||||
# header = [
|
||||
# "Opérations",
|
||||
# "Date",
|
||||
# "Degré de satisfaction au global",
|
||||
# "Degré de réalisation des objectifs",
|
||||
# "As-tu l’impression de bien maîtriser les sujets qui ont été abordés pendant le cours ?",
|
||||
# "Les travaux préparatoires étaient-ils clairs et compréhensibles ?",
|
||||
# "Que penses-tu des compétences techniques de la personne chargée du cours et de sa maîtrise du sujet ?",
|
||||
# "Les questions et les suggestions des participants ont-elles été prises au sérieux et traitées correctement ?",
|
||||
# "Souhaites-tu ajouter quelque chose à l’intention de la personne chargée du cours ?",
|
||||
# "Est-ce que tu recommandes ce cours ?",
|
||||
# "Qu’est-ce qui t’a particulièrement plu ?",
|
||||
# "À ton avis, quels sont les points qui pourraient être améliorés ?",
|
||||
# ]
|
||||
#
|
||||
# self.expected_data_fahrzeug[0] = header
|
||||
#
|
||||
# self._check_export(wb, self.expected_data_fahrzeug, 3, 12)
|
||||
#
|
||||
# def test_italian_export(self):
|
||||
# activate("it")
|
||||
# wb = self._generate_workbook(
|
||||
# [self.course_session_be.id, self.course_session_zh.id]
|
||||
# )
|
||||
#
|
||||
# header = [
|
||||
# "Svolgimenti",
|
||||
# "Data",
|
||||
# "Soddisfazione complessiva",
|
||||
# "Raggiungimento complessivo degli obiettivi",
|
||||
# "Come valuti il tuo livello di preparazione sui temi dopo il corso?",
|
||||
# "Gli incarichi di preparazione erano chiari e comprensibili?",
|
||||
# "Come valuti il livello di preparazione sui temi e le competenze specialistiche dell’istruttore/istruttrice del corso?",
|
||||
# "Le domande e i suggerimenti dei/delle partecipanti al corso sono stati accolti e presi sul serio?",
|
||||
# "Cos’altro vorresti ancora dire all’istruttore/istruttrice del corso?",
|
||||
# "Raccomanderesti il corso?",
|
||||
# "Cos’hai apprezzato particolarmente?",
|
||||
# "Dove vedi un potenziale di miglioramento?",
|
||||
# ]
|
||||
#
|
||||
# self.expected_data_fahrzeug[0] = header
|
||||
#
|
||||
# self._check_export(wb, self.expected_data_fahrzeug, 3, 12)
|
||||
self._check_export(wb, [[None] * 6], 1, 6)
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ from vbv_lernwelt.course_session.services.export_attendance import (
|
|||
export_attendance,
|
||||
make_export_filename,
|
||||
)
|
||||
from vbv_lernwelt.dashboard.person_export import export_persons
|
||||
from vbv_lernwelt.dashboard.person_export import export_persons, PERSONS_EXPORT_FILENAME
|
||||
from vbv_lernwelt.dashboard.utils import (
|
||||
CourseSessionWithRoles,
|
||||
create_course_session_dict,
|
||||
|
|
@ -41,6 +41,10 @@ from vbv_lernwelt.dashboard.utils import (
|
|||
)
|
||||
from vbv_lernwelt.duedate.models import DueDate
|
||||
from vbv_lernwelt.duedate.serializers import DueDateSerializer
|
||||
from vbv_lernwelt.feedback.export import (
|
||||
export_feedback_with_circle_restriction,
|
||||
FEEDBACK_EXPORT_FILE_NAME,
|
||||
)
|
||||
from vbv_lernwelt.learnpath.models import Circle
|
||||
from vbv_lernwelt.self_evaluation_feedback.models import SelfEvaluationFeedback
|
||||
|
||||
|
|
@ -396,6 +400,24 @@ def export_competence_elements_as_xsl(request):
|
|||
|
||||
@api_view(["POST"])
|
||||
def export_feedback_as_xsl(request):
|
||||
circle_ids = request.data.get("circleIds", None)
|
||||
requested_course_session_ids = request.data.get("courseSessionIds", [])
|
||||
course_sessions_with_roles = _get_permitted_courses_sessions_for_user(
|
||||
request.user, requested_course_session_ids
|
||||
) # noqa
|
||||
|
||||
allowed_circles = _get_permitted_circles_ids_for_user_and_course_session(
|
||||
request.user,
|
||||
course_sessions_with_roles,
|
||||
circle_ids,
|
||||
) # noqa
|
||||
|
||||
data = export_feedback_with_circle_restriction(allowed_circles, False)
|
||||
return _make_excel_response(data, FEEDBACK_EXPORT_FILE_NAME)
|
||||
|
||||
|
||||
@api_view(["POST"])
|
||||
def export_persons_as_xsl(request):
|
||||
requested_course_session_ids = request.data.get("courseSessionIds", [])
|
||||
course_sessions_with_roles = _get_permitted_courses_sessions_for_user(
|
||||
request.user, requested_course_session_ids
|
||||
|
|
@ -404,7 +426,7 @@ def export_feedback_as_xsl(request):
|
|||
data = export_persons(
|
||||
[cswr.id for cswr in course_sessions_with_roles],
|
||||
)
|
||||
return _make_excel_response(data, COMPETENCE_ELEMENT_EXPORT_FILE_NAME)
|
||||
return _make_excel_response(data, PERSONS_EXPORT_FILENAME)
|
||||
|
||||
|
||||
def _get_permitted_courses_sessions_for_user(
|
||||
|
|
|
|||
Loading…
Reference in New Issue