public void TestMobileAnimation() { Serial mobile = 0x1; var action = 200; var frameCount = 5; var repeatCount = 1; var reverse = false; var repeat = false; byte delay = 5; var data = new MobileAnimation( mobile, action, frameCount, repeatCount, !reverse, repeat, delay ).Compile(); Span <byte> expectedData = stackalloc byte[14]; var pos = 0; expectedData.Write(ref pos, (byte)0x6E); // Packet ID expectedData.Write(ref pos, mobile); expectedData.Write(ref pos, (ushort)action); expectedData.Write(ref pos, (ushort)frameCount); expectedData.Write(ref pos, (ushort)repeatCount); expectedData.Write(ref pos, reverse); expectedData.Write(ref pos, repeat); expectedData.Write(ref pos, delay); AssertThat.Equal(data, expectedData); }
public void TestMobileAnimation(int action, int frameCount, int repeatCount, bool reverse, bool repeat, byte delay) { Serial mobile = 0x1; var expected = new MobileAnimation( mobile, action, frameCount, repeatCount, !reverse, repeat, delay ).Compile(); using var ns = PacketTestUtilities.CreateTestNetState(); ns.SendMobileAnimation( mobile, action, frameCount, repeatCount, !reverse, repeat, delay ); var result = ns.SendPipe.Reader.TryRead(); AssertThat.Equal(result.Buffer[0].AsSpan(0), expected); }