public void TurnEngine_RemoveIfDead_Dead_True_Should_Return_False() { // Arrange var Monster = new MonsterModel { CurrentHealth = 1, Alive = true, Guid = "me" }; var PlayerInfo = new PlayerInfoModel(Monster); Engine.MonsterList.Clear(); Engine.MonsterList.Add(PlayerInfo); Engine.MakePlayerList(); // Act var result = Engine.RemoveIfDead(PlayerInfo); // Reset // Assert Assert.AreEqual(false, result); }
public void RoundEngine_OrderPlayerListByTurnOrder_Speed_Higher_Should_Pass() { // Arrange var Monster = new BaseMonster { Speed = 20, Level = 20, CurrHealth = 100, ////ExperienceTotal = 1000, Name = "Z", ListOrder = 1, Guid = "me" }; var MonsterPlayer = new PlayerInfoModel(Monster); Engine.MonsterList.Clear(); Engine.MonsterList.Add(MonsterPlayer); var Character = new BaseCharacter { Speed = 1, Level = 1, CurrHealth = 2, ////ExperienceTotal = 1, Name = "C", ListOrder = 10 }; var CharacterPlayer = new PlayerInfoModel(Character); Engine.CharacterList.Clear(); Engine.CharacterList.Add(CharacterPlayer); // Make the List Engine.PlayerList = Engine.MakePlayerList(); // Sort the list by Current Health, so it has to be resorted. Engine.PlayerList = Engine.PlayerList.OrderBy(m => m.CurrHealth).ToList(); // Act var result = Engine.OrderPlayerListByTurnOrder(); // Reset // Assert Assert.AreEqual("me", result[0].Guid); }
public void HakathonScenario_15_Slowest_First_Should_Pass() { /* * Scenario Number: * #15 * * Description: * On a 20% chance the slowest creatures and players will move first instead of fastest * * Changes Required (Classes, Methods etc.) List Files, Methods, and Describe Changes: * AboutPage.Xaml * AboutPage.Xaml.cs * RoundEngine.cs * OrderPlayerListByTurnOrder() * * Test Algrorithm: * Set the "AlwaysSlowest" variable to true to ensure that the slowest goes first. * Add 2 monsters * Check list order for slowest * * Test Conditions: * Slowest activated - Slowest first * Slowest not activated - Slowest second * * Validation: * Validate that the slowest goes first in the list. Validate the slowest is at index 1 */ var Monster = new BaseMonster { Speed = 20, CurrHealth = 12, Name = "A", }; var MonsterPlayer = new PlayerInfoModel(Monster); var saveMonster = Engine.MonsterList; Engine.MonsterList.Clear(); Engine.MonsterList.Add(MonsterPlayer); var Character = new BaseCharacter { Speed = 1, CurrHealth = 10, Name = "B", }; var CharacterPlayer = new PlayerInfoModel(Character); var saveCharacter = Engine.CharacterList; Engine.CharacterList.Clear(); Engine.CharacterList.Add(CharacterPlayer); // Make the List Engine.PlayerList = Engine.MakePlayerList(); // Sort the list by Current Health, so it has to be resorted. Engine.PlayerList = Engine.PlayerList.OrderBy(m => m.CurrHealth).ToList(); Engine.SpeedAlways = true; var result = Engine.OrderPlayerListByTurnOrder(); // Reset Engine.CharacterList = saveCharacter; Engine.MonsterList = saveMonster; // Assert Assert.AreEqual("B", result[0].Name); Assert.AreEqual("A", result[1].Name); }