Mercurial > repos > IBBoard.WarFoundry.API.Tests
comparison API/Util/UnitEquipmentUtilTest.cs @ 22:25b21f564348
Re #198: Add equipment slot
* Add initial unit tests for new "is equipment and slot ratio limited" method
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Tue, 27 Oct 2009 20:27:02 +0000 |
parents | 40a2fd337907 |
children | 54abb61b9db8 |
comparison
equal
deleted
inserted
replaced
21:40a2fd337907 | 22:25b21f564348 |
---|---|
197 UnitEquipmentItem equip2 = new MockPercentageAmountUnitEquipmentItem(new MockEquipmentItem("equip2"), unitType); | 197 UnitEquipmentItem equip2 = new MockPercentageAmountUnitEquipmentItem(new MockEquipmentItem("equip2"), unitType); |
198 equip2.SlotName = "slot"; | 198 equip2.SlotName = "slot"; |
199 unit.SetEquipmentAmount(equip2, 5); | 199 unit.SetEquipmentAmount(equip2, 5); |
200 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 200 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
201 } | 201 } |
202 | |
203 [Test()] | |
204 public void TestIsEquipmentRatioLimitsWithRatioLimitedEquipmentAndUnlimitedSlot() | |
205 { | |
206 UnitEquipmentItem equip = new MockPercentageAmountUnitEquipmentItem(); | |
207 equip.MinLimit = new SimpleRoundedPercentageLimit(50, true); | |
208 UnitType unitType = equip.EquipmentForUnit; | |
209 Unit unit = GetUnit(unitType); | |
210 Assert.IsTrue(UnitEquipmentUtil.IsEquipmentRatioLimited(unit, equip)); | |
211 } | |
212 | |
213 [Test()] | |
214 public void TestIsEquipmentRatioLimitsWithRatioLimitedEquipmentAndRatioSlot() | |
215 { | |
216 UnitEquipmentItem equip = new MockPercentageAmountUnitEquipmentItem(); | |
217 equip.SlotName = "slot"; | |
218 equip.MinLimit = new SimpleRoundedPercentageLimit(50, true); | |
219 UnitType unitType = equip.EquipmentForUnit; | |
220 unitType.AddEquipmentSlot("slot", new SimpleRoundedPercentageLimit(50, true)); | |
221 Unit unit = GetUnit(unitType); | |
222 Assert.IsTrue(UnitEquipmentUtil.IsEquipmentRatioLimited(unit, equip)); | |
223 } | |
224 | |
225 [Test()] | |
226 public void TestIsEquipmentRatioLimitsWithRatioLimitedEquipmentAndAbsoluteSlot() | |
227 { | |
228 UnitEquipmentItem equip = new MockPercentageAmountUnitEquipmentItem(); | |
229 equip.SlotName = "slot"; | |
230 equip.MinLimit = new SimpleRoundedPercentageLimit(50, true); | |
231 UnitType unitType = equip.EquipmentForUnit; | |
232 unitType.AddEquipmentSlot("slot", new AbsoluteNumericLimit(5)); | |
233 Unit unit = GetUnit(unitType); | |
234 Assert.IsFalse(UnitEquipmentUtil.IsEquipmentRatioLimited(unit, equip)); | |
235 } | |
202 | 236 |
203 private static Unit GetUnit (UnitType unitType) | 237 private static Unit GetUnit (UnitType unitType) |
204 { | 238 { |
205 return new Unit ("unit", "Test Unit", 10, unitType, new MockArmyCategory (unitType.MainCategory)); | 239 return new Unit ("unit", "Test Unit", 10, unitType, new MockArmyCategory (unitType.MainCategory)); |
206 } | 240 } |