roman-numerals: add test with longest output #2414
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This matters for languages like C where people need to allocate memory manually for the output.
An example of a mistake this would catch is if someone fails to consider that each arabic digit (except the thousands) can result in up to 4 letters. Or if they correctly compute a maximum of 15 letters but then forget to add 1 for the terminating null byte (in C).
Before this PR, those mistakes would not get caught, as the longest output in existing tests was 9 letters long.
Impact on existing solutions: in a lot of languages this will not matter. In languages with manual memory management, I think solutions that would fail the new test were never correct in the first place.