@Test public void musicNoteReadTest3() throws Exception { assertAmbiguityFree(parser, "2Ebb"); // Nos garantiza que es válido y no hay ambigüedades MusicNote note = parser.parse("2Ebb"); assertTrue(note instanceof AbsoluteMusicNote); AbsoluteMusicNote aNote = (AbsoluteMusicNote) note; assertEquals(2, aNote.getOctave().intValue()); assertTrue( aNote.getMusicNoteName() instanceof AlteredNoteName); // Idem, tienes que implementar getNoteName() AlteredNoteName altNoteName = (AlteredNoteName) aNote.getMusicNoteName(); BasicNoteName bNoteName = altNoteName.getBasicNoteName(); assertEquals( "E", bNoteName .getValue()); // Implementa ese getValue también, así es independiente del toString (que // da la traducción a lilypond y que podría cambiar en un futuro). Alteration alteration = altNoteName.getAlteration(); assertTrue(alteration instanceof DoubleFlatAlteration); DoubleFlatAlteration dSharpAlteration = (DoubleFlatAlteration) alteration; assertEquals("bb", dSharpAlteration.getValue()); }
// Comprobamos si la información leída de una nota es correcta: @Test public void musicNoteReadTest1() throws Exception { assertAmbiguityFree(parser, "-2D"); // Nos garantiza que es válido y no hay ambigüedades MusicNote note = parser.parse("-2D"); assertTrue(note instanceof AbsoluteMusicNote); AbsoluteMusicNote aNote = (AbsoluteMusicNote) note; assertEquals(-2, aNote.getOctave().intValue()); assertTrue( aNote.getMusicNoteName() instanceof BasicNoteName); // Idem, tienes que implementar getNoteName() BasicNoteName bNoteName = (BasicNoteName) aNote.getMusicNoteName(); assertEquals( "D", bNoteName .getValue()); // Implementa ese getValue también, así es independiente del toString (que // da la traducción a lilypond y que podría cambiar en un futuro). }