-
-
Notifications
You must be signed in to change notification settings - Fork 546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
crypto-square: Improve test data #937
Conversation
"property": "ciphertext", | ||
"plaintext": "Chill out.", | ||
"expected": "clu hlt io " | ||
}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the new test case, which I borrowed from the source of the problem. I think it's a useful bridge between the previous test case, which tests a perfect rectangle, and the next test case, which like this one tests an imperfect rectangle but is quite a bit longer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice. 👍
I'm not sure the version needs to go to See also: #936 (review) |
I now took a look into the version numbering documentation… This sentence:
Makes this changes (as well as the other two I've requested changes in) worth a major bump. But what exactly is “well behaved”? To be honest… I do expect about every change, that goes beyond renaming or adding/removing a test to break the generator. But especially adding and removing tests, are often responsible for a major bump as well, since they can change the exercises path, the way to solve it, even the resulting program a lot… So I conclude: just omit minor and patch, do only major in the future… But that is probably better discussed elsewere… PS: Even though I think a minor is sufficient here, the removal of the additional cases layer probably breaks generators, so major seems valid :( |
Thanks for the quick review!
Good question. After I read the section in the README about minor version changes, I thought your point seemed like a good one and revised the original commit to make it a minor version change. However, I think @NobbZ has a good point as well:
I'm not familiar with how generators work across all languages, so maybe with the removal of test groupings, it would be safer to make this a major version change. Does anyone have strong feelings one way or the other? |
Even worse…
But I expect this to break the generators, since the cases aren't anymore were the generator expects them… |
I think the bit you quoted makes it clear that this should be a minor version bump given the current policies. If regrouping/renesting test cases does break generators, I think it's worth re-opening #673 or creating a new issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
This cleans up a few things about crypto-square's canonical data that I thought were worth addressing before I generated new tests in the Ruby repo to address exercism/ruby#422.