Mercurial > repos > IBBoard.WarFoundry.API.Tests
comparison API/Objects/UnitTest.cs @ 16:74346d5c17fe
Re #198: Add slots with counts to units
* Add tests for equipment slot amount storage and retrieval
* Add extra constructors to some mocks for constructing other objects of same type
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sat, 24 Oct 2009 14:02:50 +0000 |
parents | 1119b6f48e8e |
children | 4480d7151d35 |
comparison
equal
deleted
inserted
replaced
15:1119b6f48e8e | 16:74346d5c17fe |
---|---|
76 unit.Size = 5; | 76 unit.Size = 5; |
77 unit.SetEquipmentAmount(equip, 2); | 77 unit.SetEquipmentAmount(equip, 2); |
78 unit.SetEquipmentAmount(equip, 0); | 78 unit.SetEquipmentAmount(equip, 0); |
79 Assert.AreEqual(0, unit.GetEquipmentAmount(equip)); | 79 Assert.AreEqual(0, unit.GetEquipmentAmount(equip)); |
80 } | 80 } |
81 | |
82 [Test()] | |
83 public void TestAmountInSlotWithNoItems() | |
84 { | |
85 UnitType unitType = new MockUnitType(); | |
86 Unit unit = new MockUnit(unitType, new MockArmyCategory(unitType.MainCategory)); | |
87 Assert.AreEqual(0, unit.GetEquipmentAmountInSlot("")); | |
88 } | |
89 | |
90 [Test()] | |
91 public void TestAmountInSlotWithOneItem() | |
92 { | |
93 UnitEquipmentItem equip = new MockPercentageAmountUnitEquipmentItem(); | |
94 string slotName = "TestSlot"; | |
95 equip.SlotName = slotName; | |
96 UnitType unitType = equip.EquipmentForUnit; | |
97 Unit unit = new MockUnit(unitType, new MockArmyCategory(unitType.MainCategory)); | |
98 unit.Size = 5; | |
99 unit.SetEquipmentRatio(equip, 50); | |
100 Assert.AreEqual(2, unit.GetEquipmentAmountInSlot(slotName)); | |
101 } | |
102 | |
103 [Test()] | |
104 public void TestAmountInSlotWithMultipleItems() | |
105 { | |
106 UnitEquipmentItem equip1 = new MockPercentageAmountUnitEquipmentItem(); | |
107 string slotName = "TestSlot"; | |
108 equip1.SlotName = slotName; | |
109 UnitType unitType = equip1.EquipmentForUnit; | |
110 Unit unit = new MockUnit(unitType, new MockArmyCategory(unitType.MainCategory)); | |
111 unit.Size = 10; | |
112 unit.SetEquipmentRatio(equip1, 50); | |
113 UnitEquipmentItem equip2 = new MockPercentageAmountUnitEquipmentItem(new MockEquipmentItem("equip2"), unitType); | |
114 equip2.SlotName = slotName; | |
115 equip2.MinPercentage = 0; | |
116 UnitEquipmentItem equip3 = new MockPercentageAmountUnitEquipmentItem(new MockEquipmentItem("equip3"), unitType); | |
117 equip3.SlotName = slotName; | |
118 equip3.MinPercentage = 0; | |
119 unit.SetEquipmentRatio(equip2, 25); | |
120 unit.SetEquipmentRatio(equip3, 10); | |
121 Assert.AreEqual(8, unit.GetEquipmentAmountInSlot(slotName)); | |
122 } | |
81 } | 123 } |
82 } | 124 } |