feat(checker): Add codeforces-batch-v1 judge#677
Conversation
| if self.checker_rr.returncode == 0: | ||
| return RelativeSolutionResult( | ||
| verdict=Verdict.ok, | ||
| message="OK", |
There was a problem hiding this comment.
Shouldn't the message be the content of the report file?
There was a problem hiding this comment.
I always treated the message as the thing shown to participants. Also report file can be multiline.
There was a problem hiding this comment.
The checker comment is shown to participants, just only on samples during the contest proper.
There was a problem hiding this comment.
And message is always shown to the participants in the opendata module.
There was a problem hiding this comment.
It's not a perfect match, but I feel it's kind of like when CMS only shows you the verdict for some test cases.
Regardless of if the comment is the same thing as a message, we should record it and show it in verbose mode. (And, in the future, make it available in the opendata module.)
There was a problem hiding this comment.
Regardless of if the comment is the same thing as a message, we should record it and show it in verbose mode. (And, in the future, make it available in the opendata module.)
Yes, that is why this is a draft PR.
|
|
||
| @staticmethod | ||
| def _invalid_path(name: str) -> str: | ||
| return os.path.join(gettempdir(), f"the-{name}-is-not-available-{uuid4()}") |
There was a problem hiding this comment.
Nit: testlib.h will always open all files. While it does not seem to be a problem if a file does not exists, if it does exist, at least its size will be checked. An attacker could create a large file or directory with the right name in /tmp/ to cause the judge to crash.
There was a problem hiding this comment.
So you would pass all the files always?
No description provided.