public void InvalidScorePartNode_PartIdMissing()
        {
            var importer = new GuitarMusicXmlImporter();

            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.LoadXml("<score-partwise><part-list><score-part><part-name></part-name></score-part></part-list></score-partwise>");

            var exception = Assert.Throws <InvalidXmlMusicFile>(() => importer.ListTracks(xmlDoc));

            Assert.AreEqual("'id' attribute was not found in 'score-part' node of a MusicXml file.", exception.Message);
        }
        public void ImporterReturnsTrackListCorrectly()
        {
            var importer = new GuitarMusicXmlImporter();

            XmlDocument xmlDoc = importer.OpenMusicXmlFile(MusicXmlTest);

            IList <TrackInfo> tracks = importer.ListTracks(xmlDoc);

            Assert.IsNotNull(tracks);
            Assert.AreEqual(2, tracks.Count);

            Assert.AreEqual("P1", tracks[0].Id);
            Assert.AreEqual("My Track 1", tracks[0].Name);

            Assert.AreEqual("P2", tracks[1].Id);
            Assert.AreEqual("My Track 2", tracks[1].Name);
        }