public void TurnEngine_Attack_Valid_Empty_Monster_List_Should_Fail() { // Arrange Engine.CharacterList.Clear(); Engine.CharacterList.Add(new CharacterModel()); Engine.MonsterList.Clear(); // Make the List Engine.EntityList = Engine.MakeEntityList(); // Act var result = Engine.Attack(Engine.EntityList .Where(m => m.EntityType == EntityTypeEnum.Character).FirstOrDefault()); // Reset Engine.StartBattle(false); // Clear the Engine // Assert Assert.AreEqual(false, result); // should be false since no monster to attack }
public void RoundEngine_OrderEntityListByTurnOrder_Speed_Higher_Should_Pass() { // Arrange var Monster = new MonsterModel { Speed = 20, Level = 20, CurrentHealth = 100, ExperienceGiven = 1000, Name = "Z", Id = "me" }; Engine.MonsterList.Clear(); Engine.MonsterList.Add(Monster); var Character = new CharacterModel { Speed = 1, Level = 1, CurrentHealth = 2, TotalExperience = 1, Name = "C", }; Engine.CharacterList.Clear(); Engine.CharacterList.Add(Character); // Make the List Engine.EntityList = Engine.MakeEntityList(); // Sort the list by Current Health, so it has to be resorted. Engine.EntityList = Engine.EntityList.OrderBy(m => m.CurrentHealth).ToList(); // Act var result = Engine.OrderEntityListByTurnOrder(); // Resets // Assert Assert.AreEqual("me", result[0].Id); }