Example #1
0
        private void CastTest(int numCasts)
        {
            byte tick = 0;

            using (UDPServer <ByteArrayCast> UDPServer = new UDPServer <ByteArrayCast>(Port))
            {
                using (UDPClient <ByteArrayCast> udpClient = new UDPClient <ByteArrayCast>(Port))
                {
                    udpClient.Received += UdpClient_Received;
                    UDPServer.AddSubscriber(IPAddress.Loopback);

                    for (int i = 0; i < numCasts; i++)
                    {
                        byte[] data1 = new byte[] { 1, 2, 3, 4 };
                        byte[] data2 = new byte[] { 4, 3, 2, 1 };

                        ByteArrayCast sentCast = new ByteArrayCast(tick, new byte[][] { data1, data2 });
                        UDPServer.Broadcast(sentCast);

                        if (castReceived.WaitOne(5000))
                        {
                            Assert.AreEqual(receivedCast, sentCast);
                        }
                        else
                        {
                            throw new Exception("Receive failure");
                        }

                        tick++;
                    }
                }
            }
        }
Example #2
0
 private void UdpClient_Received(ByteArrayCast cast)
 {
     receivedCast = cast;
     castReceived.Set();
 }