public void TestMalusReductionUpdateGreenLight() { Packet packet = new Packet(0); transport.ClientEnqueue(packet, "tester", 0); server.SingleStep(); uint avatarId = BitConverter.ToUInt32(transport.ClientDequeue().data, 5); //retrive GameObj from avatarId and check its previous position Avatar testerObj = (Avatar)server.GetGameObject(avatarId); Assert.That(testerObj, Is.Not.EqualTo(null)); //check GameClient malus on creation uint testerMalus = testerObj.Malus; Assert.That(testerMalus, Is.EqualTo(0)); //check GameClient malus on creation uint malusValue = 3; testerObj.IncreaseMalus(malusValue); uint testerMalusAfterBadBehaviour = testerObj.Malus; Assert.That(testerMalusAfterBadBehaviour, Is.EqualTo(testerMalus + malusValue)); clock.IncreaseTimeStamp(400f); //server.SingleStep(); server.CheckMalus(); uint newMalus = testerObj.Malus; Assert.That(newMalus, Is.EqualTo(testerMalusAfterBadBehaviour - 1)); clock.IncreaseTimeStamp(30f); Assert.That(testerObj.Malus, Is.EqualTo(newMalus)); }
public void TestMalusReductionUpdateGreenLight() { Packet packet = new Packet(0); transport.ClientEnqueue(packet, "tester", 0); server.SingleStep(); uint avatarId = BitConverter.ToUInt32(transport.ClientDequeue().data, 5); // riavvia GameObj da avatarId e controlla la sua posizione precedente Avatar testerObj = (Avatar)server.GetGameObject(avatarId); Assert.That(testerObj, Is.Not.EqualTo(null)); // controlla GameClient malus alla creazione uint testerMalus = testerObj.Malus; Assert.That(testerMalus, Is.EqualTo(0)); // controlla GameClient malus alla creazione uint malusValue = 3; testerObj.IncreaseMalus(malusValue); uint testerMalusAfterBadBehaviour = testerObj.Malus; Assert.That(testerMalusAfterBadBehaviour, Is.EqualTo(testerMalus + malusValue)); clock.IncreaseTimeStamp(400f); server.CheckMalus(); uint newMalus = testerObj.Malus; Assert.That(newMalus, Is.EqualTo(testerMalusAfterBadBehaviour - 1)); clock.IncreaseTimeStamp(30f); Assert.That(testerObj.Malus, Is.EqualTo(newMalus)); }