From 77f1d18d24baf17b21076414033ca4f53ef36f25 Mon Sep 17 00:00:00 2001 From: Egor Matveev Date: Sun, 19 Dec 2021 13:47:30 +0300 Subject: [PATCH] test num --- Main/models/solution.py | 17 +++++++++++++++++ SprintLib/testers/BaseTester.py | 3 +++ templates/solutions_table.html | 2 +- 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/Main/models/solution.py b/Main/models/solution.py index dad968e..847115e 100644 --- a/Main/models/solution.py +++ b/Main/models/solution.py @@ -19,6 +19,7 @@ class Solution(models.Model): language_id = models.IntegerField(default=0) time_sent = models.DateTimeField(default=timezone.now) result = models.TextField(default=CONSTS["in_queue_status"]) + test = models.IntegerField(default=None) @property def language(self): @@ -57,6 +58,22 @@ class Solution(models.Model): def directory(self): return "solutions/" + str(self.id) + @property + def number_result(self): + if self.test is None: + return self.result + return f"{self.result} ({self.test})" + + @property + def badge_style(self): + if self.result == CONSTS["in_queue_status"]: + return "secondary" + if self.result == CONSTS["ok_status"]: + return "success" + if self.result == CONSTS["testing_status"]: + return "info" + return "danger" + @property def testing_directory(self): return self.directory diff --git a/SprintLib/testers/BaseTester.py b/SprintLib/testers/BaseTester.py index 56422e5..fa7adc7 100644 --- a/SprintLib/testers/BaseTester.py +++ b/SprintLib/testers/BaseTester.py @@ -30,6 +30,8 @@ class BaseTester: raise TestException("CE") def test(self, filename): + self.solution.test = int(filename) + self.solution.save() code = self.solution.exec_command( f"< {filename} {self.command} > output.txt", timeout=self.solution.task.time_limit / 1000, @@ -97,6 +99,7 @@ class BaseTester: self.test(test.filename) self.after_test() self.solution.result = CONSTS["ok_status"] + self.solution.test = None progress = Progress.objects.get( user=self.solution.user, task=self.solution.task ) diff --git a/templates/solutions_table.html b/templates/solutions_table.html index 67b5eb2..cceb022 100644 --- a/templates/solutions_table.html +++ b/templates/solutions_table.html @@ -28,7 +28,7 @@

- {% if solution.result == testing_status %} {% endif %}{{ solution.result }} + {% if solution.result == testing_status %} {% endif %}{{ solution.number_result }}