Description
May I know who wrote Writing Submission Tests, specifically the "Reference Solution" part, and why it is so focused on emphasizing
- Avoid using a reference solution at all if possible
- The reference solution, if used, does not have to be the same as the one in the "Reference Solution" snippet
that they are put at the top of the list? Like, this part:
-
- Extra time spent on running a reference solution.
-
- Reference solution being accessible to users by mistake.
-
- Input mutation by the user solution which can affect the input passed to the reference solution, or make assertion messages confusing.
-
- Incorrect implementation of the reference solution leading to the rejection of valid users' solutions.
So said person is saying "we shouldn't have reference solutions powering random tests because you might mess up the reference solution"? Wut? Why don't said person just say "we shouldn't have people creating katas because they most likely would mess up something"? This is absurd and it absolutely should not be written like this.
In fact, why do we have "Reference Solution" and "Input Mutation" even before "Fixed Tests" and "Random Tests"? What is more important, having fixed tests and random tests, or defending the tests against input mutation? The former is an absolutely requirement, the latter is a technical detail.
"Input Mutation" should definitely go after "Random Tests", and IMO "Reference Solution" section need to cut down the first two paragraphs, which literally doesn't apply to 99.99% of the existing katas. It does not help anyone and would instead add more to the confusion, like this.
(Also, I would seriously consider removing the "Under some rare circumstances, it is allowed to use so-called randomized tests instead of fully random ones." section as well. It also literally doesn't apply to 99.99% of the existing katas, and writing this paragraph is just opening a hole for people to object on questionable grounds, such as this).
Activity