Ad
  • Custom User Avatar

    Hey Farid,

    Thanks for your comment. I actually didn't forget the validation but intentionally left it out. As you correctly quoted the description, the goal was to write a function that "takes a non-negative integer." This implies that the argument cannot be negative. You may also have noticed that my implementation doesn't handle values greater than 359999, and it's for the same reason. The assignment says, "The maximum time never exceeds 359999." The author of this kata also didn't specify expected behavior for those cases, nor did they provide tests.

    Having said all that, I agree that this code isn't production ready without the validation. But if it were up to me, I'd ensure that no invalid values can be passed (e.g., via static analysis or a dedicated value object) to eliminate the need for validation in this function altogether.

  • Custom User Avatar

    Well, if I got you right I'd say that this metadata doesn't belong to the version. It sounds more like we're talking about a Release that consists of a Version and maybe some Metadata or even more specific objects.

  • Custom User Avatar

    Thanks for your comment. Can you elaborate on why you think creating a new object for each version is a bad idea?

  • Custom User Avatar

    I just added the missing $ to the argument of each function plus some type hints.
    Not sure why the tests are failing now.

  • Custom User Avatar

    Yes, sorry. I mixed up "Test Cases" and "Sample Test Cases". I just forked and resubmitted.

  • Custom User Avatar
  • Custom User Avatar

    Thanks. I'll try that

  • Custom User Avatar

    So, how does the approval process work?
    Can only the author of the kata approve my translation? 🤔

  • Custom User Avatar

    The expected and actual values of the assertion in the PHP version are in the wrong order.
    This leads to errors that might confuse the beginners this kata is aimed at.

    Failed at paperwork(5, -5)
    Failed asserting that 0 matches expected -25.
    Expected: -25
    Actual  : 0