From f1ad860efb05d24d249505e9f26953a3527712d7 Mon Sep 17 00:00:00 2001 From: lathoub Date: Mon, 23 Mar 2020 14:03:04 +0100 Subject: [PATCH] removed references to USB in the test scripts --- external/midi-usb | 1 - .../tests/unit-tests_MidiUsbDefs.cpp | 60 -- .../unit-tests_MidiUsbPacketInterface.cpp | 843 ------------------ .../tests/unit-tests_RingBuffer.cpp | 203 ----- test/unit-tests/tests/unit-tests_Settings.cpp | 1 - 5 files changed, 1108 deletions(-) delete mode 160000 external/midi-usb delete mode 100644 test/unit-tests/tests/unit-tests_MidiUsbDefs.cpp delete mode 100644 test/unit-tests/tests/unit-tests_MidiUsbPacketInterface.cpp delete mode 100644 test/unit-tests/tests/unit-tests_RingBuffer.cpp diff --git a/external/midi-usb b/external/midi-usb deleted file mode 160000 index 0a1ef74..0000000 --- a/external/midi-usb +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0a1ef7498dad7904d2a54530616f418dcba9197c diff --git a/test/unit-tests/tests/unit-tests_MidiUsbDefs.cpp b/test/unit-tests/tests/unit-tests_MidiUsbDefs.cpp deleted file mode 100644 index c5059ef..0000000 --- a/test/unit-tests/tests/unit-tests_MidiUsbDefs.cpp +++ /dev/null @@ -1,60 +0,0 @@ -#include "unit-tests.h" -#include - -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 diff --git a/test/unit-tests/tests/unit-tests_MidiUsbPacketInterface.cpp b/test/unit-tests/tests/unit-tests_MidiUsbPacketInterface.cpp deleted file mode 100644 index e66cb65..0000000 --- a/test/unit-tests/tests/unit-tests_MidiUsbPacketInterface.cpp +++ /dev/null @@ -1,843 +0,0 @@ -#include "unit-tests.h" -#include -#include -#include - -BEGIN_MIDI_NAMESPACE - -END_MIDI_NAMESPACE - -// ----------------------------------------------------------------------------- - -BEGIN_UNNAMED_NAMESPACE - -using Buffer = midi::RingBuffer; -using CIN = midi::CodeIndexNumbers; - -TEST(MidiUsbPacketInterfaceTx, EmptyBufferShouldNotComposeAPacket) -{ - midiEventPacket_t packet; - Buffer buffer; - - const bool result = midi::composeTxPacket(buffer, packet); - EXPECT_FALSE(result) << "Empty buffer should not compose a packet"; -} - -TEST(MidiUsbPacketInterfaceTx, IncompleteDataShouldNotComposeAPacket) -{ - midiEventPacket_t packet; - Buffer buffer; - bool result = false; - - buffer.write(0x81); - result = midi::composeTxPacket(buffer, packet); - EXPECT_FALSE(result) << "Insufficient data should not compose a packet"; - EXPECT_EQ(1, buffer.getLength()) << "Partial data should not be read out of the buffer"; - - buffer.write(0x12); - buffer.write(0x42); - result = midi::composeTxPacket(buffer, packet); - EXPECT_TRUE(result) << "Complete data should compose a packet"; - EXPECT_EQ(0, buffer.getLength()) << "Complete packet data should be read out of the buffer"; - EXPECT_EQ(CIN::noteOff, packet.header); - EXPECT_EQ(0x81, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); -} - -// Channel Voice Messages -- - -TEST(MidiUsbPacketInterfaceTx, NoteOff) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0x80); - buffer.write(0x12); - buffer.write(0x42); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::noteOff, packet.header); - EXPECT_EQ(0x80, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, NoteOn) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0x91); - buffer.write(0x12); - buffer.write(0x42); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::noteOn, packet.header); - EXPECT_EQ(0x91, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, PolyPressure) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0xA2); - buffer.write(0x12); - buffer.write(0x42); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::polyPressure, packet.header); - EXPECT_EQ(0xA2, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, ControlChange) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0xB3); - buffer.write(0x12); - buffer.write(0x42); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::controlChange, packet.header); - EXPECT_EQ(0xB3, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, ProgramChange) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0xC4); - buffer.write(0x12); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::programChange, packet.header); - EXPECT_EQ(0xC4, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, ChannelPressure) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0xD5); - buffer.write(0x12); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::channelPressure, packet.header); - EXPECT_EQ(0xD5, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, PitchBend) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0xE6); - buffer.write(0x12); - buffer.write(0x42); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::pitchBend, packet.header); - EXPECT_EQ(0xE6, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -// System Real Time Messages -- - -TEST(MidiUsbPacketInterfaceTx, Clock) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::Clock); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::singleByte, packet.header); - EXPECT_EQ(midi::Clock, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, Start) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::Start); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::singleByte, packet.header); - EXPECT_EQ(midi::Start, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, Stop) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::Stop); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::singleByte, packet.header); - EXPECT_EQ(midi::Stop, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, Continue) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::Continue); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::singleByte, packet.header); - EXPECT_EQ(midi::Continue, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, ActiveSensing) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::ActiveSensing); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::singleByte, packet.header); - EXPECT_EQ(midi::ActiveSensing, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SystemReset) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::SystemReset); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::singleByte, packet.header); - EXPECT_EQ(midi::SystemReset, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -// System Common Messages -- - -TEST(MidiUsbPacketInterfaceTx, TuneRequest) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::TuneRequest); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::systemCommon1Byte, packet.header); - EXPECT_EQ(midi::TuneRequest, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SongSelect) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::SongSelect); - buffer.write(0x12); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::systemCommon2Bytes, packet.header); - EXPECT_EQ(midi::SongSelect, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SongPosition) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::SongPosition); - buffer.write(0x12); - buffer.write(0x42); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::systemCommon3Bytes, packet.header); - EXPECT_EQ(midi::SongPosition, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x42, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, TimeCodeQuarterFrame) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(midi::TimeCodeQuarterFrame); - buffer.write(0x12); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::systemCommon2Bytes, packet.header); - EXPECT_EQ(midi::TimeCodeQuarterFrame, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -// System Exclusive -- - -TEST(MidiUsbPacketInterfaceTx, SysExNotEnoughData) -{ - midiEventPacket_t packet; - Buffer buffer; - - buffer.write(0x12); - buffer.write(0x42); - EXPECT_FALSE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(2, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SysExSinglePacket) -{ - midiEventPacket_t packet; - Buffer buffer; - - // Two-byte SysEx (utterly useless) - buffer.write(0xf0); - buffer.write(0xf7); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExEnds2Bytes, packet.header); - EXPECT_EQ(0xf0, packet.byte1); - EXPECT_EQ(0xf7, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); - - // Single-data byte SysEx (non-spec conformant ?) - buffer.write(0xf0); - buffer.write(0x12); - buffer.write(0xf7); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExEnds3Bytes, packet.header); - EXPECT_EQ(0xf0, packet.byte1); - EXPECT_EQ(0x12, packet.byte2); - EXPECT_EQ(0xf7, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SysExTwoPackets) -{ - midiEventPacket_t packet; - Buffer buffer; - - const byte deviceIdentityRequest[6] = { - 0xf0, 0x7e, 0x7f, 0x06, 0x01, 0xf7 - }; - - buffer.write(deviceIdentityRequest, 6); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExStart, packet.header); - EXPECT_EQ(0xf0, packet.byte1); - EXPECT_EQ(0x7e, packet.byte2); - EXPECT_EQ(0x7f, packet.byte3); - EXPECT_EQ(3, buffer.getLength()); - - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExEnds3Bytes, packet.header); - EXPECT_EQ(0x06, packet.byte1); - EXPECT_EQ(0x01, packet.byte2); - EXPECT_EQ(0xf7, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SysExMultiplePacketsEndingWith1Byte) -{ - midiEventPacket_t packet; - Buffer buffer; - - const byte message[7] = { - 0xf0, 0x01, 0x02, 0x03, 0x04, 0x05, 0xf7 - }; - - buffer.write(message, 7); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExStart, packet.header); - EXPECT_EQ(0xf0, packet.byte1); - EXPECT_EQ(0x01, packet.byte2); - EXPECT_EQ(0x02, packet.byte3); - EXPECT_EQ(4, buffer.getLength()); - - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExContinue, packet.header); - EXPECT_EQ(0x03, packet.byte1); - EXPECT_EQ(0x04, packet.byte2); - EXPECT_EQ(0x05, packet.byte3); - EXPECT_EQ(1, buffer.getLength()); - - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExEnds1Byte, packet.header); - EXPECT_EQ(0xf7, packet.byte1); - EXPECT_EQ(0x00, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -TEST(MidiUsbPacketInterfaceTx, SysExMultiplePacketsEndingWith2Bytes) -{ - midiEventPacket_t packet; - Buffer buffer; - - const byte message[8] = { - 0xf0, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0xf7 - }; - - buffer.write(message, 8); - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExStart, packet.header); - EXPECT_EQ(0xf0, packet.byte1); - EXPECT_EQ(0x01, packet.byte2); - EXPECT_EQ(0x02, packet.byte3); - EXPECT_EQ(5, buffer.getLength()); - - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExContinue, packet.header); - EXPECT_EQ(0x03, packet.byte1); - EXPECT_EQ(0x04, packet.byte2); - EXPECT_EQ(0x05, packet.byte3); - EXPECT_EQ(2, buffer.getLength()); - - EXPECT_TRUE(midi::composeTxPacket(buffer, packet)); - EXPECT_EQ(CIN::sysExEnds2Bytes, packet.header); - EXPECT_EQ(0x06, packet.byte1); - EXPECT_EQ(0xf7, packet.byte2); - EXPECT_EQ(0x00, packet.byte3); - EXPECT_EQ(0, buffer.getLength()); -} - -// ============================================================================= - -TEST(MidiUsbPacketInterfaceRx, InvalidPacketIsNotSerialised) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::reserved; - packet.byte1 = 0x01; - packet.byte2 = 0x02; - packet.byte3 = 0x03; - midi::serialiseRxPacket(packet, buffer); - EXPECT_TRUE(buffer.isEmpty()); -} - -TEST(MidiUsbPacketInterfaceRx, CableEventsAreNotSerialised) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::cableEvent; - packet.byte1 = 0x01; - packet.byte2 = 0x02; - packet.byte3 = 0x03; - midi::serialiseRxPacket(packet, buffer); - EXPECT_TRUE(buffer.isEmpty()); -} - -// Channel Voice Messages -- - -TEST(MidiUsbPacketInterfaceRx, NoteOff) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::noteOff; - packet.byte1 = 0x80; - packet.byte2 = 0x12; - packet.byte3 = 0x42; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0x80, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); - EXPECT_EQ(0x42, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, NoteOn) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::noteOn; - packet.byte1 = 0x91; - packet.byte2 = 0x12; - packet.byte3 = 0x42; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0x91, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); - EXPECT_EQ(0x42, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, PolyPressure) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::polyPressure; - packet.byte1 = 0xA2; - packet.byte2 = 0x12; - packet.byte3 = 0x42; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xA2, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); - EXPECT_EQ(0x42, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, ControlChange) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::controlChange; - packet.byte1 = 0xB3; - packet.byte2 = 0x12; - packet.byte3 = 0x42; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xB3, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); - EXPECT_EQ(0x42, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, ProgramChange) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::programChange; - packet.byte1 = 0xC4; - packet.byte2 = 0x12; - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(0xC4, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, ChannelPressure) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::channelPressure; - packet.byte1 = 0xD5; - packet.byte2 = 0x12; - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(0xD5, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, PitchBend) -{ - Buffer buffer; - midiEventPacket_t packet; - packet.header = CIN::pitchBend; - packet.byte1 = 0xE6; - packet.byte2 = 0x12; - packet.byte3 = 0x42; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xE6, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); - EXPECT_EQ(0x42, buffer.read()); -} - -// System Real Time Messages -- - -TEST(MidiUsbPacketInterfaceRx, Clock) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::singleByte; - packet.byte1 = midi::Clock; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::Clock, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, Start) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::singleByte; - packet.byte1 = midi::Start; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::Start, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, Stop) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::singleByte; - packet.byte1 = midi::Stop; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::Stop, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, Continue) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::singleByte; - packet.byte1 = midi::Continue; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::Continue, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, ActiveSensing) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::singleByte; - packet.byte1 = midi::ActiveSensing; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::ActiveSensing, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SystemReset) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::singleByte; - packet.byte1 = midi::SystemReset; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::SystemReset, buffer.read()); -} - -// System Common Messages -- - -TEST(MidiUsbPacketInterfaceRx, TuneRequest) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::systemCommon1Byte; - packet.byte1 = midi::TuneRequest; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(midi::TuneRequest, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SongSelect) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::systemCommon2Bytes; - packet.byte1 = midi::SongSelect; - packet.byte2 = 0x12; - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(midi::SongSelect, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SongPosition) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::systemCommon2Bytes; - packet.byte1 = midi::SongPosition; - packet.byte2 = 0x12; - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(midi::SongPosition, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, TimeCodeQuarterFrame) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::systemCommon2Bytes; - packet.byte1 = midi::TimeCodeQuarterFrame; - packet.byte2 = 0x12; - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(midi::TimeCodeQuarterFrame, buffer.read()); - EXPECT_EQ(0x12, buffer.read()); -} - -// System Exclusive -- - -TEST(MidiUsbPacketInterfaceRx, SysExSinglePacket2Bytes) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::sysExEnds2Bytes; - packet.byte1 = 0xf0; - packet.byte2 = 0xf7; - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(0xf0, buffer.read()); - EXPECT_EQ(0xf7, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SysExSinglePacket3Bytes) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::sysExEnds3Bytes; - packet.byte1 = 0xf0; - packet.byte2 = 0x42; - packet.byte3 = 0xf7; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xf0, buffer.read()); - EXPECT_EQ(0x42, buffer.read()); - EXPECT_EQ(0xf7, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SysExTwoPackets) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::sysExStart; - packet.byte1 = 0xf0; - packet.byte2 = 0x01; - packet.byte3 = 0x02; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xf0, buffer.read()); - EXPECT_EQ(0x01, buffer.read()); - EXPECT_EQ(0x02, buffer.read()); - - packet.header = CIN::sysExEnds3Bytes; - packet.byte1 = 0x03; - packet.byte2 = 0x04; - packet.byte3 = 0xf7; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0x03, buffer.read()); - EXPECT_EQ(0x04, buffer.read()); - EXPECT_EQ(0xf7, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SysExMultiplePacketsEndingWith1Byte) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::sysExStart; - packet.byte1 = 0xf0; - packet.byte2 = 0x01; - packet.byte3 = 0x02; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xf0, buffer.read()); - EXPECT_EQ(0x01, buffer.read()); - EXPECT_EQ(0x02, buffer.read()); - - packet.header = CIN::sysExContinue; - packet.byte1 = 0x03; - packet.byte2 = 0x04; - packet.byte3 = 0x05; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0x03, buffer.read()); - EXPECT_EQ(0x04, buffer.read()); - EXPECT_EQ(0x05, buffer.read()); - - packet.header = CIN::sysExEnds1Byte; - packet.byte1 = 0xf7; - packet.byte2 = 0x12; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(1, buffer.getLength()); - EXPECT_EQ(0xf7, buffer.read()); -} - -TEST(MidiUsbPacketInterfaceRx, SysExMultiplePacketsEndingWith2Bytes) -{ - midiEventPacket_t packet; - Buffer buffer; - - packet.header = CIN::sysExStart; - packet.byte1 = 0xf0; - packet.byte2 = 0x01; - packet.byte3 = 0x02; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0xf0, buffer.read()); - EXPECT_EQ(0x01, buffer.read()); - EXPECT_EQ(0x02, buffer.read()); - - packet.header = CIN::sysExContinue; - packet.byte1 = 0x03; - packet.byte2 = 0x04; - packet.byte3 = 0x05; - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(3, buffer.getLength()); - EXPECT_EQ(0x03, buffer.read()); - EXPECT_EQ(0x04, buffer.read()); - EXPECT_EQ(0x05, buffer.read()); - - packet.header = CIN::sysExEnds2Bytes; - packet.byte1 = 0x06; - packet.byte2 = 0xf7; // Should be ignored - packet.byte3 = 0x42; // Should be ignored - midi::serialiseRxPacket(packet, buffer); - EXPECT_EQ(2, buffer.getLength()); - EXPECT_EQ(0x06, buffer.read()); - EXPECT_EQ(0xf7, buffer.read()); -} - -END_UNNAMED_NAMESPACE diff --git a/test/unit-tests/tests/unit-tests_RingBuffer.cpp b/test/unit-tests/tests/unit-tests_RingBuffer.cpp deleted file mode 100644 index 083deb7..0000000 --- a/test/unit-tests/tests/unit-tests_RingBuffer.cpp +++ /dev/null @@ -1,203 +0,0 @@ -#include "unit-tests.h" -#include - -BEGIN_UNNAMED_NAMESPACE -using namespace testing; -using Buffer = midi::RingBuffer; - -TEST(RingBuffer, writeScalar) -{ - Buffer buffer; - EXPECT_EQ(buffer.isEmpty(), true); - EXPECT_EQ(buffer.getLength(), 0); - buffer.write(42); - buffer.write(47); - EXPECT_EQ(buffer.isEmpty(), false); - EXPECT_EQ(buffer.getLength(), 2); -} - -TEST(RingBuffer, readScalar) -{ - Buffer buffer; - buffer.write(42); - EXPECT_EQ(buffer.getLength(), 1); - buffer.write(47); - EXPECT_EQ(buffer.getLength(), 2); - EXPECT_EQ(buffer.read(), 42); - EXPECT_EQ(buffer.getLength(), 1); - EXPECT_EQ(buffer.read(), 47); - EXPECT_EQ(buffer.isEmpty(), true); - EXPECT_EQ(buffer.getLength(), 0); -} - -TEST(RingBuffer, clear) -{ - Buffer buffer; - buffer.write(42); - buffer.write(47); - buffer.clear(); - EXPECT_EQ(buffer.isEmpty(), true); - EXPECT_EQ(buffer.getLength(), 0); -} - -TEST(RingBuffer, writeArray) -{ - Buffer buffer; - const uint8_t input[4] = { - 1, 2, 3, 4 - }; - buffer.write(input, 4); - EXPECT_EQ(buffer.isEmpty(), false); - EXPECT_EQ(buffer.getLength(), 4); -} - -TEST(RingBuffer, writeOverflow) -{ - Buffer buffer; - - buffer.write(1); - EXPECT_EQ(buffer.getLength(), 1); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(2); - EXPECT_EQ(buffer.getLength(), 2); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(3); - EXPECT_EQ(buffer.getLength(), 3); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(4); - EXPECT_EQ(buffer.getLength(), 4); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(5); - EXPECT_EQ(buffer.getLength(), 5); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(6); - EXPECT_EQ(buffer.getLength(), 6); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(7); - EXPECT_EQ(buffer.getLength(), 7); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(8); - EXPECT_EQ(buffer.getLength(), 8); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(9); - EXPECT_EQ(buffer.getLength(), 8); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(10); - EXPECT_EQ(buffer.getLength(), 8); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(11); - EXPECT_EQ(buffer.getLength(), 8); - EXPECT_EQ(buffer.isEmpty(), false); - buffer.write(12); - EXPECT_EQ(buffer.getLength(), 8); - EXPECT_EQ(buffer.isEmpty(), false); -} - -TEST(RingBuffer, readOverflow) -{ - Buffer buffer; - - buffer.write(1); - buffer.write(2); - buffer.write(3); - buffer.write(4); - buffer.write(5); - buffer.write(6); - buffer.write(7); - buffer.write(8); - buffer.write(9); - buffer.write(10); - buffer.write(11); - buffer.write(12); - EXPECT_EQ(buffer.read(), 5); - EXPECT_EQ(buffer.getLength(), 7); - EXPECT_EQ(buffer.read(), 6); - EXPECT_EQ(buffer.getLength(), 6); - EXPECT_EQ(buffer.read(), 7); - EXPECT_EQ(buffer.getLength(), 5); - EXPECT_EQ(buffer.read(), 8); - EXPECT_EQ(buffer.getLength(), 4); - EXPECT_EQ(buffer.read(), 9); - EXPECT_EQ(buffer.getLength(), 3); - EXPECT_EQ(buffer.read(), 10); - EXPECT_EQ(buffer.getLength(), 2); - EXPECT_EQ(buffer.read(), 11); - EXPECT_EQ(buffer.getLength(), 1); - EXPECT_EQ(buffer.read(), 12); - EXPECT_EQ(buffer.getLength(), 0); - EXPECT_EQ(buffer.read(), 0); - EXPECT_EQ(buffer.getLength(), 0); -} - -TEST(RingBuffer, writeArrayOverflow) -{ - Buffer buffer; - const uint8_t input[12] = { - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - }; - buffer.write(input, 12); - EXPECT_EQ(buffer.isEmpty(), false); - EXPECT_EQ(buffer.getLength(), 8); // Max size -} - -TEST(RingBuffer, readArray) -{ - Buffer buffer; - const uint8_t input[4] = { - 1, 2, 3, 4 - }; - uint8_t output[4] = { 0 }; - buffer.write(input, 4); - buffer.read(output, 4); - EXPECT_THAT(output, ContainerEq(input)); -} - -TEST(RingBuffer, readArrayOverflow) -{ - Buffer buffer; - const uint8_t input[12] = { - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, - }; - const uint8_t expected[8] = { - 5, 6, 7, 8, 9, 10, 11, 12, - }; - uint8_t output[8] = { 0 }; - - buffer.write(input, 12); - buffer.read(output, 8); - EXPECT_THAT(output, ContainerEq(expected)); - EXPECT_EQ(buffer.isEmpty(), true); - EXPECT_EQ(buffer.getLength(), 0); -} - -TEST(RingBuffer, peek) -{ - Buffer buffer; - const uint8_t input[4] = { - 1, 2, 3, 4 - }; - - buffer.write(input, 4); - EXPECT_EQ(1, buffer.peek()); - EXPECT_EQ(2, buffer.peek(1)); - EXPECT_EQ(3, buffer.peek(2)); - EXPECT_EQ(4, buffer.peek(3)); - EXPECT_EQ(4, buffer.getLength()) << "Peek should not change buffer length"; -} - -TEST(RingBuffer, pop) -{ - Buffer buffer; - const uint8_t input[4] = { - 1, 2, 3, 4 - }; - - buffer.write(input, 4); - buffer.pop(); - EXPECT_EQ(3, buffer.getLength()); - buffer.pop(2); - EXPECT_EQ(1, buffer.getLength()); -} - -END_UNNAMED_NAMESPACE - diff --git a/test/unit-tests/tests/unit-tests_Settings.cpp b/test/unit-tests/tests/unit-tests_Settings.cpp index 72f44a1..cfb1326 100644 --- a/test/unit-tests/tests/unit-tests_Settings.cpp +++ b/test/unit-tests/tests/unit-tests_Settings.cpp @@ -19,7 +19,6 @@ TEST(Settings, hasTheRightDefaultValues) EXPECT_EQ(midi::DefaultSettings::UseRunningStatus, false); EXPECT_EQ(midi::DefaultSettings::HandleNullVelocityNoteOnAsNoteOff, true); EXPECT_EQ(midi::DefaultSettings::Use1ByteParsing, true); - EXPECT_EQ(midi::DefaultSettings::BaudRate, 31250); EXPECT_EQ(midi::DefaultSettings::SysExMaxSize, unsigned(128)); }