Example #1
0
        public void Scale_Melodic_C()
        {
            NoteSharp starting = NoteSharp.C;

            NoteSequence scale  = new NoteSequence(new NoteSharp[] { NoteSharp.C, NoteSharp.D, NoteSharp.DSharp, NoteSharp.F, NoteSharp.G, NoteSharp.A, NoteSharp.B, NoteSharp.C, NoteSharp.ASharp, NoteSharp.GSharp, NoteSharp.G, NoteSharp.F, NoteSharp.DSharp, NoteSharp.D, NoteSharp.C }),
                         result = new NoteSequence(_service.BuildMelodicScale(starting).ScaleNotes);

            Assert.AreEqual(scale.Length, result.Length, "Result scale is the wrong length.");

            for (var i = 0; i < scale.Length; i++)
            {
                Assert.AreEqual(scale.Notes[i], result.Notes[i], "Mismatch at index {0}", i);
            }
        }