private static void AssertReadInvalidFunctionCode(ControlByte controlByte) { void AccessFunctionCode() { var _ = controlByte.FunctionCode; } DltLibAssert.AssertException <InvalidControlByteException>(AccessFunctionCode, ex => ex.InvalidControlByte == controlByte.Byte); }
private static void AssertWriteInvalidFunctionCode(byte functionCodeValue, byte uppperThreeBit) { var controlByte = new ControlByte(uppperThreeBit); void AssignFunctionCode() { controlByte.FunctionCode = (FunctionCode)functionCodeValue; } DltLibAssert.AssertException <InvalidEnumArgumentException>(AssignFunctionCode); }
public void TestCouldntParseInvalidDltData() { DltLibAssert.AssertException <InvalidFrameStartByteException>(() => _dltDataParser.ParseDltData( new byte[] { 0x12, 0x27, 0x19, 0x40, 0x23, 0x74, 0x68, 0x68, 0x11, 0x04, 0x34, 0x35, 0xC3, 0x33, 0xC3, 0x16 }), ex => ex.InvalidByte == 0x12 && ex.Message == "Invalid frame start byte 0x12"); DltLibAssert.AssertException <InvalidFrameStartByteException>(() => _dltDataParser.ParseDltData( new byte[] { 0x68, 0x27, 0x19, 0x40, 0x23, 0x74, 0x68, 0x84, 0x11, 0x04, 0x34, 0x35, 0xC3, 0x33, 0xC3, 0x16 }), ex => ex.InvalidByte == 0x84 && ex.Message == "Invalid frame start byte 0x84"); DltLibAssert.AssertException <FrameChecksumMismatchedException>(() => _dltDataParser.ParseDltData( new byte[] { 0x68, 0x27, 0x19, 0x40, 0x23, 0x74, 0x68, 0x68, 0x11, 0x04, 0x34, 0x35, 0xC3, 0x33, 0x4A, 0x16 }), ex => ex.ExpectedChecksum == 0xC3 && ex.ActualChecksum == 0x4A && ex.Message == "Frame checksum doesn't matched expected checksum: 0xC3, actual checksum: 0x4A"); DltLibAssert.AssertException <InvalidFrameStopByteException>(() => _dltDataParser.ParseDltData( new byte[] { 0x68, 0x27, 0x19, 0x40, 0x23, 0x74, 0x68, 0x68, 0x11, 0x04, 0x34, 0x35, 0xC3, 0x33, 0xC3, 0x74 }), ex => ex.InvalidByte == 0x74 && ex.Message == "Invalid frame stop byte 0x74"); }