arduino_midi_library/test/unit-tests/tests/unit-tests_MidiUsbDefs.cpp

61 lines
3.0 KiB
C++

#include "unit-tests.h"
#include <src/midi_UsbDefs.h>
BEGIN_MIDI_NAMESPACE
END_MIDI_NAMESPACE
// -----------------------------------------------------------------------------
BEGIN_UNNAMED_NAMESPACE
TEST(MidiUsbDefs, codeIndexNumberFromStatus)
{
typedef midi::CodeIndexNumbers CIN;
EXPECT_EQ(CIN::fromStatus(midi::InvalidType), CIN::reserved);
EXPECT_EQ(CIN::fromStatus(midi::NoteOff), CIN::noteOff);
EXPECT_EQ(CIN::fromStatus(midi::NoteOn), CIN::noteOn);
EXPECT_EQ(CIN::fromStatus(midi::AfterTouchPoly), CIN::polyPressure);
EXPECT_EQ(CIN::fromStatus(midi::ControlChange), CIN::controlChange);
EXPECT_EQ(CIN::fromStatus(midi::ProgramChange), CIN::programChange);
EXPECT_EQ(CIN::fromStatus(midi::AfterTouchChannel), CIN::channelPressure);
EXPECT_EQ(CIN::fromStatus(midi::PitchBend), CIN::pitchBend);
EXPECT_EQ(CIN::fromStatus(midi::Clock), CIN::singleByte);
EXPECT_EQ(CIN::fromStatus(midi::Start), CIN::singleByte);
EXPECT_EQ(CIN::fromStatus(midi::Continue), CIN::singleByte);
EXPECT_EQ(CIN::fromStatus(midi::Stop), CIN::singleByte);
EXPECT_EQ(CIN::fromStatus(midi::ActiveSensing), CIN::singleByte);
EXPECT_EQ(CIN::fromStatus(midi::SystemReset), CIN::singleByte);
EXPECT_EQ(CIN::fromStatus(midi::SystemExclusive), CIN::sysExStart);
EXPECT_EQ(CIN::fromStatus(midi::TuneRequest), CIN::systemCommon1Byte);
EXPECT_EQ(CIN::fromStatus(midi::TimeCodeQuarterFrame), CIN::systemCommon2Bytes);
EXPECT_EQ(CIN::fromStatus(midi::SongSelect), CIN::systemCommon2Bytes);
EXPECT_EQ(CIN::fromStatus(midi::SongPosition), CIN::systemCommon3Bytes);
}
TEST(MidiUsbDefs, codeIndexNumberSizes)
{
typedef midi::CodeIndexNumbers CIN;
EXPECT_EQ(CIN::getSize(CIN::reserved), 0);
EXPECT_EQ(CIN::getSize(CIN::misc), 0);
EXPECT_EQ(CIN::getSize(CIN::cableEvent), 0);
EXPECT_EQ(CIN::getSize(CIN::systemCommon2Bytes), 2);
EXPECT_EQ(CIN::getSize(CIN::systemCommon3Bytes), 3);
EXPECT_EQ(CIN::getSize(CIN::sysExStart), 3);
EXPECT_EQ(CIN::getSize(CIN::sysExContinue), 3);
EXPECT_EQ(CIN::getSize(CIN::systemCommon1Byte), 1);
EXPECT_EQ(CIN::getSize(CIN::sysExEnds1Byte), 1);
EXPECT_EQ(CIN::getSize(CIN::sysExEnds2Bytes), 2);
EXPECT_EQ(CIN::getSize(CIN::sysExEnds3Bytes), 3);
EXPECT_EQ(CIN::getSize(CIN::noteOff), 3);
EXPECT_EQ(CIN::getSize(CIN::noteOn), 3);
EXPECT_EQ(CIN::getSize(CIN::polyPressure), 3);
EXPECT_EQ(CIN::getSize(CIN::controlChange), 3);
EXPECT_EQ(CIN::getSize(CIN::programChange), 2);
EXPECT_EQ(CIN::getSize(CIN::channelPressure), 2);
EXPECT_EQ(CIN::getSize(CIN::pitchBend), 3);
EXPECT_EQ(CIN::getSize(CIN::singleByte), 1);
}
END_UNNAMED_NAMESPACE