public void GamestateAttemptApplyPlayerPacketTest() { byte actorNumber = 1; GamestateCommitTestHelper <PlayerEntry> testHelper = new GamestateCommitTestHelper <PlayerEntry>(actorNumber); GamestateTable <PlayerEntry> players = testHelper.TestTable(GamestateTracker.Table.Players); GamestateRandomTestingUnit generator = new GamestateRandomTestingUnit(902); for (short i = 0; i < 100; i++) { PlayerEntry playerEntry = players.Create(i); generator.RandomisePlayerEntry(playerEntry); playerEntry.Commit(); GamestatePacket packetA = testHelper.commitedPackets[0]; bool attemptA = testHelper.AttemptApply(packetA); GamestatePacket packetB = generator.GetRandomPacket(); packetB.id = i; packetB.packetType = GamestatePacket.PacketType.Update; packetB.revisionNumber = packetA.revisionNumber; bool attemptB = testHelper.AttemptApply(packetB); GamestatePacket packetC = generator.GetRandomPacket(); packetC.id = i; packetC.packetType = GamestatePacket.PacketType.Update; packetC.revisionNumber = packetA.revisionNumber; bool attemptC = testHelper.AttemptApply(packetC); Assert.That(attemptA, Is.EqualTo(true)); Assert.That(attemptB, Is.EqualTo(false)); Assert.That(attemptC, Is.EqualTo(false)); playerEntry = players.Get(i); GamestateAssertionUnit.AssertPacketApplied(playerEntry, packetA); playerEntry.Release(); testHelper.commitedPackets.Clear(); } }
public void GamestatePacketSerializeTestC() { GamestateRandomTestingUnit generator = new GamestateRandomTestingUnit(5); for (int i = 0; i < 100; i++) { GamestatePacket gamestatePacket = generator.GetRandomPacket(); byte[] serializedPacket = GamestatePacket.Serialize(gamestatePacket); Assert.That(serializedPacket, Is.Not.Null); Assert.That(serializedPacket, Is.Not.Empty); GamestatePacket newPacket = GamestatePacket.Deserialize(serializedPacket) as GamestatePacket; Assert.That(newPacket, Is.Not.Null); GamestateAssertionUnit.AssertPacketEquality(gamestatePacket, newPacket); } }