public void AbilityEnumListTest() { PKMN.AbilityEnumList abilityEnumList = new PKMN.AbilityEnumList(); abilityEnumList.Add(PKMN.Ability.STENCH); abilityEnumList.Add(PKMN.Ability.TANGLED_FEET); abilityEnumList.Add(PKMN.Ability.SAP_SIPPER); abilityEnumList.Add(PKMN.Ability.BULLETPROOF); abilityEnumList.Add(PKMN.Ability.DELTA_STREAM); PKMN.AbilityEnumList abilityEnumListSame = new PKMN.AbilityEnumList(); abilityEnumListSame.Add(PKMN.Ability.STENCH); abilityEnumListSame.Add(PKMN.Ability.TANGLED_FEET); abilityEnumListSame.Add(PKMN.Ability.SAP_SIPPER); abilityEnumListSame.Add(PKMN.Ability.BULLETPROOF); abilityEnumListSame.Add(PKMN.Ability.DELTA_STREAM); PKMN.AbilityEnumList abilityEnumListReversed = new PKMN.AbilityEnumList(); abilityEnumListReversed.Add(PKMN.Ability.DELTA_STREAM); abilityEnumListReversed.Add(PKMN.Ability.BULLETPROOF); abilityEnumListReversed.Add(PKMN.Ability.SAP_SIPPER); abilityEnumListReversed.Add(PKMN.Ability.TANGLED_FEET); abilityEnumListReversed.Add(PKMN.Ability.STENCH); Assert.AreEqual(abilityEnumList, abilityEnumList); Assert.AreEqual(abilityEnumList, abilityEnumListSame); Assert.AreEqual(abilityEnumList.GetHashCode(), abilityEnumListSame.GetHashCode()); Assert.AreNotEqual(abilityEnumList, abilityEnumListReversed); Assert.AreNotEqual(abilityEnumList.GetHashCode(), abilityEnumListReversed.GetHashCode()); }
public void AbilityListTest() { // Make sure trying to create invalid lists results in an exception. Assert.Throws <IndexOutOfRangeException>( delegate { PKMN.Database.Lists.AbilityList(0); } ); Assert.Throws <IndexOutOfRangeException>( delegate { PKMN.Database.Lists.AbilityNameList(0); } ); PKMN.AbilityEnumList abilityList = PKMN.Database.Lists.AbilityList(6); Assert.AreEqual(abilityList.Count, 191); Assert.AreEqual(abilityList[0], PKMN.Ability.STENCH); Assert.AreEqual(abilityList[190], PKMN.Ability.DELTA_STREAM); PKMN.StringList abilityNameList = PKMN.Database.Lists.AbilityNameList(6); Assert.AreEqual(abilityNameList.Count, 191); Assert.AreEqual(abilityNameList[0], "Stench"); Assert.AreEqual(abilityNameList[190], "Delta Stream"); // Make sure lists match. Assert.AreEqual(abilityList.Count, abilityNameList.Count); for (int abilityIndex = 0; abilityIndex < abilityList.Count; ++abilityIndex) { string abilityName = PKMN.PKMN.AbilityToString(abilityList[abilityIndex]); Assert.AreEqual(abilityName, abilityNameList[abilityIndex]); } }