public void GenericPacketTest()
        {
            // create a couple packets and write them out
            WrapperPacket packet1 = new WrapperPacket("Test1", 100);
            WrapperPacket packet2 = new WrapperPacket("Test2", 200);

            m_PacketWriter.Write(packet1);
            m_PacketWriter.Write(packet2);

            // read the packets back, but without having registered a packet factory for WrapperPacket
            m_MemoryStream.Position = 0;
            IPacket genericPacket1 = m_PacketReader.Read();
            IPacket genericPacket2 = m_PacketReader.Read();

            // now write the generic packets back out
            Assert.AreEqual(m_MemoryStream.Length, m_MemoryStream.Position);
            m_MemoryStream.Position = 0;
            PacketWriter writer = new PacketWriter(m_MemoryStream);

            writer.Write(genericPacket1);
            writer.Write(genericPacket2);

            // finally, read the generic packets back again, but this time
            // with a PacketFactory defined for WrapperPacket.
            PacketReader reader = new PacketReader(m_MemoryStream, false);

            reader.RegisterType(typeof(WrapperPacket));
            m_MemoryStream.Position = 0;
            Assert.AreEqual(packet1, reader.Read());
            Assert.AreEqual(packet2, reader.Read());
            Assert.AreEqual(m_MemoryStream.Length, m_MemoryStream.Position);
        }
Ejemplo n.º 2
0
        private void OnPacketReceived(WrapperPacket wrapperPacket, NetPeer peer)
        {
            NitroxConnection connection = GetConnection(peer.Id);
            Packet           packet     = Packet.Deserialize(wrapperPacket.packetData);

            ProcessIncomingData(connection, packet);
        }
        public void CheckWriting1Packet()
        {
            m_PacketReader.RegisterType(typeof(WrapperPacket));
            WrapperPacket writtenPacket = new WrapperPacket("Test1", 100);

            m_PacketWriter.Write(writtenPacket);
            Assert.AreEqual(108, m_MemoryStream.Position);
            m_MemoryStream.Position = 0;
            IPacket readPacket = m_PacketReader.Read();

            Assert.AreEqual(writtenPacket, readPacket);
        }
        public void CheckWriting2Packets()
        {
            m_PacketReader.RegisterType(typeof(WrapperPacket));
            WrapperPacket packet1 = new WrapperPacket("Test1", 100);
            WrapperPacket packet2 = new WrapperPacket("Test2", 200);

            m_PacketWriter.Write(packet1);
            Assert.AreEqual(108, m_MemoryStream.Position);
            m_PacketWriter.Write(packet2);
            Assert.AreEqual(126, m_MemoryStream.Position);
            m_MemoryStream.Position = 0;
            Assert.AreEqual(packet1, m_PacketReader.Read());
            Assert.AreEqual(packet2, m_PacketReader.Read());
        }
Ejemplo n.º 5
0
        private void OnPacketReceived(WrapperPacket wrapperPacket, NetPeer peer)
        {
            Packet packet = Packet.Deserialize(wrapperPacket.packetData);

            packetReceiver.PacketReceived(packet);
        }