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); }
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); }