public void Note_MixedLengthAndVelocity() { var defaultNoteLength = (MusicalLength)MusicalFraction.Quarter; var defaultVelocity = (SevenBitNumber)90; var specifiedLength = new MetricLength(0, 0, 10); var specifiedVelocity = (SevenBitNumber)95; var pattern = new PatternBuilder() .SetNoteLength(defaultNoteLength) .SetVelocity(defaultVelocity) .Note(OctaveDefinition.Get(0).A) .Note(OctaveDefinition.Get(1).C, specifiedLength, specifiedVelocity) .Build(); TestNotes(pattern, new[] { new NoteInfo(NoteName.A, 0, null, defaultNoteLength, defaultVelocity), new NoteInfo(NoteName.C, 1, (MusicalTime)MusicalFraction.Quarter, specifiedLength, specifiedVelocity) }); }
public void MoveToFirstAnchor_Unkeyed_OneUnkeyed() { var moveTime = new MetricTime(0, 0, 10); var step = new MetricLength(0, 0, 11); var anchorTime = moveTime + step; var pattern = new PatternBuilder() .MoveToTime(moveTime) .StepForward(step) .Anchor() .MoveToTime(new MetricTime(0, 0, 30)) .StepBack(new MetricLength(0, 0, 5)) .MoveToFirstAnchor() .Note(OctaveDefinition.Get(0).A) .Build(); TestNotes(pattern, new[] { new NoteInfo(NoteName.A, 0, anchorTime, (MusicalLength)MusicalFraction.Quarter) }); }