public void ProcessTlvStream() { var expectedTlv = new[] { new Tlv { Tag = 0xe0u, Value = new byte[] { 0x12 }, }, new Tlv { Tag = 0xe1u, Value = new byte[] { 0x23, 0x34 }, }, }; var d = new byte[] { 0xe0, 0x01, 0x12, 0xe1, 0x02, 0x23, 0x34 }; var actualTlv = new List <Tlv>(); var ms = new MemoryStream(d); TlvEncoding.ProcessTlvStream(ms, (tag, data) => { actualTlv.Add(new Tlv { Tag = tag, Value = data, }); }); AssertTlvArrayEqual(expectedTlv, actualTlv.ToArray()); }
public void ProcessTlvStreamZeroLengthTag() { var d = new byte[] { 0xe0, 0x00 }; var ms = new MemoryStream(d); TlvEncoding.ProcessTlvStream(ms, (tag, data) => { }); }