Exemplo n.º 1
0
        public void TestMultiTargetReq()
        {
            var         multiID = 0x1024;
            var         p       = new Point3D(1000, 100, 10);
            MultiTarget t       = new TestMultiTarget(multiID, p);

            var data = new MultiTargetReq(t).Compile();

            Span <byte> expectedData = stackalloc byte[26];
            var         pos          = 0;

            expectedData.Write(ref pos, (byte)0x99); // Packet ID
            expectedData.Write(ref pos, t.AllowGround);
            expectedData.Write(ref pos, t.TargetID);

#if NO_LOCAL_INIT
            expectedData.Write(ref pos, 0);
            expectedData.Write(ref pos, (ushort)0);
            expectedData.Write(ref pos, (ushort)0);
            expectedData.Write(ref pos, (byte)0);
            expectedData.Write(ref pos, (byte)0);
            expectedData.Write(ref pos, (ushort)0);
#else
            pos += 12;
#endif

            expectedData.Write(ref pos, (short)t.MultiID);
            expectedData.Write(ref pos, (ushort)t.Offset.X);
            expectedData.Write(ref pos, (ushort)t.Offset.Y);
            expectedData.Write(ref pos, (short)t.Offset.Z);

            AssertThat.Equal(data, expectedData);
        }
Exemplo n.º 2
0
        public void TestMultiTargetReq()
        {
            var         multiID = 0x1024;
            var         p       = new Point3D(1000, 100, 10);
            MultiTarget t       = new TestMultiTarget(multiID, p);

            var expected = new MultiTargetReq(t).Compile();

            using var ns = PacketTestUtilities.CreateTestNetState();
            ns.SendMultiTargetReq(t);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }