public async Task RoundEngine_GetItemFromPoolIfBetter_Location_Empty_Should_Fail() { Engine.MonsterList.Clear(); // Both need to be character to fall through to the Name Test // Arrange var Character = new BaseCharacter { Speed = 20, Level = 1, CurrHealth = 1, ////ExperienceTotal = 1, Name = "Z", ListOrder = 1, Guid = "me" }; // Add each model here to warm up and load it. Game.Helpers.DataSetsHelper.WarmUp(); var item1 = new ItemModel { Attribute = AttributeEnum.Attack, Value = 1, Location = ItemLocationEnum.Feet }; var item2 = new ItemModel { Attribute = AttributeEnum.Attack, Value = 20, Location = ItemLocationEnum.Feet }; await ItemIndexViewModel.Instance.CreateAsync(item1); await ItemIndexViewModel.Instance.CreateAsync(item2); Engine.ItemPool.Add(item1); Engine.ItemPool.Add(item2); // Put the Item on the Character Character.Head = null; var CharacterPlayer = new PlayerInfoModel(Character); Engine.CharacterList.Clear(); Engine.CharacterList.Add(new PlayerInfoModel(Character)); // Make the List Engine.PlayerList = Engine.MakePlayerList(); // Act var result = Engine.GetItemFromPoolIfBetter(CharacterPlayer, ItemLocationEnum.Feet); // Reset // Assert Assert.AreEqual(true, result); Assert.AreEqual(item2.Id, CharacterPlayer.Feet); // The 2nd item is better, so did they swap? }
public async Task RoundEngine_GetItemFromPoolIfBetter_Location_Empty_Should_Fail() { // Arrange var Character = new CharacterModel { Speed = 20, Level = 1, CurrentHealth = 1, TotalExperience = 1, Name = "Z", Id = "me" }; // Add each model here to warm up and load it. Game.Helpers.DataSetsHelper.WarmUp(); var item1 = new ItemModel { Attribute = AttributeEnum.Attack, Value = 1, Location = ItemLocationEnum.Feet }; var item2 = new ItemModel { Attribute = AttributeEnum.Attack, Value = 20, Location = ItemLocationEnum.Feet }; await ItemIndexViewModel.Instance.CreateAsync(item1); await ItemIndexViewModel.Instance.CreateAsync(item2); Engine.ItemPool.Add(item1); Engine.ItemPool.Add(item2); // Put the Item on the Character Character.HeadItem = null; Engine.CharacterList.Clear(); Engine.CharacterList.Add(Character); // Make the List Engine.EntityList = Engine.MakeEntityList(); // Act var result = Engine.GetItemFromPoolIfBetter(Character, ItemLocationEnum.Feet); // Reset // Assert Assert.AreEqual(true, result); Assert.AreEqual(item2.Id, Character.FeetItem); // The 2nd item is better, so did they swap? }