public void TestNewSpellbookContent() { Serial serial = 0x1000; ushort graphic = 100; ushort offset = 10; ulong content = 0x123456789ABCDEF0; bool opl = ObjectPropertyList.Enabled; var expected = new NewSpellbookContent(serial, graphic, offset, content).Compile(); using var ns = PacketTestUtilities.CreateTestNetState(); ns.ProtocolChanges = ns.ProtocolChanges | ProtocolChanges.ContainerGridLines | ProtocolChanges.NewSpellbook; ObjectPropertyList.Enabled = true; ns.SendSpellbookContent(serial, graphic, offset, content); ObjectPropertyList.Enabled = opl; var result = ns.SendPipe.Reader.TryRead(); AssertThat.Equal(result.Buffer[0].AsSpan(0), expected); }
public void TestNewSpellbookContent() { Serial serial = 0x1000; ushort graphic = 100; ushort offset = 10; ulong content = 0x123456789ABCDEF0; var data = new NewSpellbookContent(serial, graphic, offset, content).Compile(); Span <byte> expectedData = stackalloc byte[23]; var pos = 0; expectedData.Write(ref pos, (byte)0xBF); // Packet ID expectedData.Write(ref pos, (ushort)0x17); // Length expectedData.Write(ref pos, (ushort)0x1B); // Sub-packet expectedData.Write(ref pos, (ushort)0x1); // Command expectedData.Write(ref pos, serial); expectedData.Write(ref pos, graphic); expectedData.Write(ref pos, offset); expectedData.WriteLE(ref pos, content); AssertThat.Equal(data, expectedData); }