diff --git a/SprintLib/testers/BaseTester.py b/SprintLib/testers/BaseTester.py index 849e0d5..61ecc26 100644 --- a/SprintLib/testers/BaseTester.py +++ b/SprintLib/testers/BaseTester.py @@ -121,7 +121,11 @@ class BaseTester: ).text.strip().replace('\r\n', '\n') print('predicted:', self.predicted) self.solution.test = int(test.filename) - self.solution.extras[test.filename] = {'predicted': test.text, 'output': ''} + try: + predicted = self.predicted.decode('utf-8') + except UnicodeDecodeError: + predicted = '' + self.solution.extras[test.filename] = {'predicted': predicted, 'output': ''} self.solution.save() try: self.test(test.filename) diff --git a/templates/solution.html b/templates/solution.html index c28842f..30788eb 100644 --- a/templates/solution.html +++ b/templates/solution.html @@ -43,24 +43,26 @@ {% for entity in solution.files %}
{{ entity.filename }}
{{ entity.text }}
-
+

{% endfor %} {% if solution.task.creator == user or user.username in solution.task.editors or solution.set and solution.set.creator == user or solution.set and user.username in solution.set.editors %}

Лог тестрования

{% for key, value in solution.extras.items %} -
{{ key }}
+
Тест {{ key }}
Затраченное время: {{ value.time_spent }} мс
-
-
+
+ Ожидаемый вывод:
{{ value.predicted }}
-
+
+ Фактический вывод:
{{ value.output }}
+
{% endfor %} {% endif %} {% endblock %} \ No newline at end of file