public void TryParse_ShouldReturnFalseWhenIncorrectPacketLength() { InterfaceResponseMessage message; var buffer = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; var result = InterfaceResponseMessage.TryParse(buffer, out message); result.ShouldBeFalse(); }
public void TryParse_ShouldReturnFalseWhenIncorrectInterfaceCommand() { InterfaceResponseMessage message; var buffer = new byte[] { PacketLengths.InterfaceResponse, PacketType.InterfaceMessage, InterfaceControlSubType.ModeCommand, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; var result = InterfaceResponseMessage.TryParse(buffer, out message); result.ShouldBeFalse(); }
public override void Handle(ReceiveContext context) { InterfaceResponseMessage message; if (InterfaceResponseMessage.TryParse(context.Data, out message)) { context.Observable.OnNext(new MessageReceived <InterfaceResponseMessage>(message)); } else { InvokeNextHandler(context); } }