Sync crypto-square with problem specifications - #532
Conversation
|
Hello. Thanks for opening a PR on Exercism 🙂 We ask that all changes to Exercism are discussed on our Community Forum before being opened on GitHub. To enforce this, we automatically close all PRs that are submitted. That doesn't mean your PR is rejected but that we want the initial discussion about it to happen on our forum where a wide range of key contributors across the Exercism ecosystem can weigh in. You can use this link to copy this into a new topic on the forum. If we decide the PR is appropriate, we'll reopen it and continue with it, so please don't delete your local branch. If you're interested in learning more about this auto-responder, please read this blog post. Note: If this PR has been pre-approved, please link back to this PR on the forum thread and a maintainer or staff member will reopen it. |
|
This PR touches files which potentially affect the outcome of the tests of an exercise. This will cause all students' solutions to affected exercises to be re-tested. If this PR does not affect the result of the test (or, for example, adds an edge case that is not worth rerunning all tests for), please add the following to the merge-commit message which will stops student's tests from re-running. Please copy-paste to avoid typos. For more information, refer to the documentation. If you are unsure whether to add the message or not, please ping |
|
Hello 👋 Thanks for your PR. This repo does not currently have dedicated maintainers. Our cross-track maintainers team will attempt to review and merge your PR, but it will likely take longer for your PR to be reviewed. If you enjoy contributing to Exercism and have a track-record of doing so successfully, you might like to become an Exercism maintainer for this track. Please feel free to ask any questions, or chat to us about anything to do with this PR or the reviewing process on the Exercism forum. (cc @exercism/cross-track-maintainers) |
|
This is an unmaintained repository. Cross-track maintainers - feel free to merge. |
|
Looks good. The CI is failing due to an unrelated exercise having a flaky test. I'll look into that separately, but I can confirm from the CI log that Crypto Square passes all its tests. Since you updated the example solution to pass the new tests, feel free to add your GH username to the |
|
Thanks for taking a look and for confirming that Crypto Square is passing all the tests! 🙌 I'll add my GitHub username to the |
Adds the missing 'normalization results in empty plaintext' canonical case and updates the reimplemented 54-character case (description corrected from 7 to 8 chunks, same input/expected values).
This also fixes a real bug in Example.vb: Ciphertext checked plaintext.Length (the raw input) before the empty-check, so inputs that normalize to an empty string (e.g. '... --- ...', all punctuation) skipped the early return and crashed trying to build rows/columns from nothing. Now it checks the normalized string's length instead.
Verified via pwsh ./bin/test.ps1 crypto-square - all tests pass.
Closes #434