//[TestCase("AMNOA", "MNO", TestName = "SLIP Receiving does decode data, basic encoding")] //[TestCase("ABCA", "A", TestName = "SLIP Receiving does decode data, delimiter encoding")] //[TestCase("ABDA", "B", TestName = "SLIP Receiving does decode data, escaping encoding")] //[TestCase("ABCBDCA", "ABC", TestName = "SLIP Receiving does decode data, full encoding")] public void TestReceiveIsDecoded(string toDecode, string expectedDecoded) { _buffer = new byte[toDecode.Length]; for (int i = 0; i < toDecode.Length; i++) { _buffer[i] = (byte)toDecode[i]; } _serial.Receive(ref Arg.Any <byte[]>()).Returns(x => { x[1] = _buffer; return(toDecode.Length); }); int l = expectedDecoded.Length; var actual = new byte[l]; int recv = _uut.Receive(ref actual, toDecode.Length); byte[] expected = new byte[l]; for (int i = 0; i < l; i++) { expected[i] = (byte)expectedDecoded[i]; } Assert.That(recv, Is.EqualTo(toDecode.Length)); Assert.That(actual.SequenceEqual(expected)); }