I’m trying to sync the test suite for scale-generator on the Rust track. (link to problem spec tests)
It turns out that the Rust version has changed two test cases, namely the ones for chromatic scales. In the Rust exercise, the starting note is expected to be repeated at the end.
For example, consider the chromatic scale of “C”:
# rust
["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B", "C"]
# problem spec
["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"]
For the other tests, with the property “interval”, the problem spec tests also expects the last first note to be repeated at the end. Interestingly, this didn’t use to be the case, all the “interval” tests were reimplemented to add this last note. However, this was not done for the chromatic test cases.
Here is the commit that reimplemented all the “interval” tests (but not the “chromatic” tests).
I am completely clueless about music. I wonder: Why are the chromatic tests different than the interval tests? What is the right thing to do here? Should the chromatic tests be adjusted? Should I change the Rust tests?