public void SampleMessages_ReceivedCorrectly() { var messages = new List <OpcMessage>(); var endpoint = new IPEndPoint(IPAddress.Loopback, 8001); using (var server = new OpcCommandListener(endpoint)) { server.MessageReceived += (o, a) => { messages.Add(a); }; SendBytes(endpoint, new byte[] { 0x05, 0x07, 0x00, 0x02, // payload 0x01, 0x02, // Second message 0x03, 0x04, 0x00, 0x03, // payload 0x01, 0x02, 0x03, }); // Wait for pending async threads etc... System.Threading.Thread.Sleep(500); Assert.NotEmpty(messages); var message = messages[0]; Assert.Equal(5, message.Channel); Assert.Equal(7, (int)message.Command); Assert.Equal(2, message.Length); Assert.Equal(2, message.Data.Length); Assert.Equal(new byte[] { 0x01, 0x02 }, message.Data); message = messages[1]; Assert.Equal(3, message.Channel); Assert.Equal(4, (int)message.Command); Assert.Equal(3, message.Length); Assert.Equal(3, message.Data.Length); Assert.Equal(new byte[] { 0x01, 0x02, 0x03 }, message.Data); } }
public void SampleMessages_ReceivedCorrectly() { var messages = new List<OpcMessage>(); var endpoint = new IPEndPoint(IPAddress.Loopback, 8001); using (var server = new OpcCommandListener(endpoint)) { server.MessageReceived += (o, a) => { messages.Add(a); }; SendBytes(endpoint, new byte[]{ 0x05, 0x07, 0x00, 0x02, // payload 0x01, 0x02, // Second message 0x03, 0x04, 0x00, 0x03, // payload 0x01, 0x02, 0x03, }); // Wait for pending async threads etc... System.Threading.Thread.Sleep(500); Assert.NotEmpty(messages); var message = messages[0]; Assert.Equal(5, message.Channel); Assert.Equal(7, (int)message.Command); Assert.Equal(2, message.Length); Assert.Equal(2, message.Data.Length); Assert.Equal(new byte[] { 0x01, 0x02 }, message.Data); message = messages[1]; Assert.Equal(3, message.Channel); Assert.Equal(4, (int)message.Command); Assert.Equal(3, message.Length); Assert.Equal(3, message.Data.Length); Assert.Equal(new byte[] { 0x01, 0x02, 0x03 }, message.Data); } }