package com.xenoage.zong.io.midi.out; import com.xenoage.zong.core.music.Pitch; import org.junit.Test; import static com.xenoage.utils.kernel.Range.range; import static com.xenoage.zong.core.music.Pitch.pi; import static org.junit.Assert.*; /** * Test cases for a Pitch class. * * @author Andreas Wenger */ public class MidiToolsTest { private int[] midi; private Pitch[] pitch; public MidiToolsTest() { midi = new int[5]; pitch = new Pitch[5]; //C8 midi[0] = 108; pitch[0] = pi(0, 0, 8); //F#6 midi[1] = 90; pitch[1] = pi(3, 1, 6); //C4 midi[2] = 60; pitch[2] = pi(0, 0, 4); //Eb2 midi[3] = 39; pitch[3] = pi(1, 1, 2); //A0 midi[4] = 21; pitch[4] = pi(5, 0, 0); } @Test public void getPitchFromNoteNumberTest() { for (int i : range(midi)) { Pitch p = MidiTools.getPitchFromNoteNumber(midi[i]); assertEquals(pitch[i], p); } } @Test public void getNoteNumberFromPitchTest() { for (int i : range(midi)) { assertEquals(midi[i], MidiTools.getNoteNumber(pitch[i])); } } }