MusicSheetReader.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import {MusicSheetReader} from "../../../src/MusicalScore/ScoreIO/MusicSheetReader";
  2. import {MusicSheet} from "../../../src/MusicalScore/MusicSheet";
  3. import {IXmlElement} from "../../../src/Common/FileIO/Xml";
  4. declare var fixture: any;
  5. describe("Music Sheet Reader Tests", () => {
  6. // Initialization
  7. let path: string = "/test/data/MuzioClementi_SonatinaOpus36No1_Part1.xml";
  8. let reader: MusicSheetReader = new MusicSheetReader();
  9. before((): void => {
  10. fixture.setBase("base");
  11. });
  12. beforeEach((): void => {
  13. this.result = fixture.load(path);
  14. });
  15. afterEach((): void => {
  16. fixture.cleanup();
  17. });
  18. it("Test Sonatina Op.36 No. 1 - Pt. 1", (done: MochaDone) => {
  19. let container: Element = document.getElementById("fixture_container");
  20. let documentElement: IXmlElement = new IXmlElement(container);
  21. chai.expect(documentElement.elements("score-partwise").length).to.equal(1);
  22. let root: IXmlElement = documentElement.element("score-partwise");
  23. chai.expect(root).to.not.be.undefined;
  24. let sheet: MusicSheet = reader.createMusicSheet(root, path);
  25. chai.expect(sheet.TitleString).to.equal("Sonatina Op.36 No 1 Teil 1 Allegro");
  26. chai.expect(sheet.ComposerString).to.equal("Muzio Clementi");
  27. console.log("Sheet Object:", sheet);
  28. done();
  29. });
  30. });