prezjordan/Melopy — pull request #47 by afreidah (2012-09-13 18:46:28+00:00)
Title: a few additions to scales.py and a new chord/scale spelling approach that will work better, updates to tests

I have added diminished and augmented triads to scales.py as well as fixing the half/whole step pattern in the harmonic minor scale which was incorrectly raising the 6th scale degree instead of the 7th. Also there is an additional file called patternConstructor.py that has functionality used to build all scales and chords so that they can be spelled correctly. Ex: C minor chord should be spelled "C Eb G" instead of "C D# G". This is happening all over. These changes should allow any chord or scale to be spelled correctly even if it goes into double sharps or double flats. There might only be 12 distinct pitches in western music, but there are 35 different ways to represent those 12 notes and all should be available. Using this approach should also make it easy to extend the chords into including 7th chords, 9th chords, etc. Also updated the tests file as the functions that generate chords/scales are not preceeded by "generate" and all the tests were failing. renamed those functions and now they work. Changed some of the assertions that were untrue ==> Cminor is not C D# G, it is C Eb G, so now the test is passing and the assertion is valid