Mercurial > repos > IBDev-IBBoard.WarFoundry.API.Tests
comparison API/Util/UnitEquipmentUtilTest.cs @ 31:c6082e4018f7
Re #209: equipmentslot Value problem
* Update unit tests to match new "check percentage, ignore numbers" min percentage calculation
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Fri, 13 Nov 2009 10:29:49 +0000 |
parents | 0cc21db8d60a |
children | 9bf542b76de2 |
comparison
equal
deleted
inserted
replaced
30:0cc21db8d60a | 31:c6082e4018f7 |
---|---|
105 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(50, false)); | 105 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(50, false)); |
106 Unit unit = GetUnit(unitType); | 106 Unit unit = GetUnit(unitType); |
107 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 107 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
108 Assert.AreEqual(7, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 108 Assert.AreEqual(7, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
109 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 109 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
110 Assert.AreEqual(IBBMath.Percentage(7, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 110 Assert.AreEqual(50, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
111 } | 111 } |
112 | 112 |
113 [Test()] | 113 [Test()] |
114 public void TestGetEquipmentCountsForFixedLimitItemOnPercentageLimitedSlotWithDifferentMinLimit() | 114 public void TestGetEquipmentCountsForFixedLimitItemOnPercentageLimitedSlotWithDifferentMinLimit() |
115 { | 115 { |
180 UnitType unitType = equip.EquipmentForUnit; | 180 UnitType unitType = equip.EquipmentForUnit; |
181 Unit unit = GetUnit(unitType); | 181 Unit unit = GetUnit(unitType); |
182 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 182 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
183 Assert.AreEqual(7, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 183 Assert.AreEqual(7, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
184 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 184 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
185 Assert.AreEqual(IBBMath.Percentage(7, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 185 Assert.AreEqual(50, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
186 } | 186 } |
187 | 187 |
188 [Test()] | 188 [Test()] |
189 public void TestGetEquipmentCountsForPercentageLimitItemOnDefaultSlotWithDifferentMinLimit() | 189 public void TestGetEquipmentCountsForPercentageLimitItemOnDefaultSlotWithDifferentMinLimit() |
190 { | 190 { |
192 UnitType unitType = equip.EquipmentForUnit; | 192 UnitType unitType = equip.EquipmentForUnit; |
193 Unit unit = GetUnit(unitType); | 193 Unit unit = GetUnit(unitType); |
194 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 194 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
195 Assert.AreEqual(3, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 195 Assert.AreEqual(3, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
196 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 196 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
197 Assert.AreEqual(IBBMath.Percentage(3, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 197 Assert.AreEqual(25, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
198 } | 198 } |
199 | 199 |
200 [Test()] | 200 [Test()] |
201 public void TestGetEquipmentCountsForPercentageLimitItemOnNumberLimitedSlot() | 201 public void TestGetEquipmentCountsForPercentageLimitItemOnNumberLimitedSlot() |
202 { | 202 { |
220 unitType.AddEquipmentSlot(SLOT_NAME, new AbsoluteNumericLimit(2)); | 220 unitType.AddEquipmentSlot(SLOT_NAME, new AbsoluteNumericLimit(2)); |
221 Unit unit = GetUnit(unitType); | 221 Unit unit = GetUnit(unitType); |
222 Assert.AreEqual(2, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 222 Assert.AreEqual(2, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
223 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 223 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
224 Assert.AreEqual(IBBMath.Percentage(2, 15), UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 224 Assert.AreEqual(IBBMath.Percentage(2, 15), UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
225 Assert.AreEqual(IBBMath.Percentage(1, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 225 Assert.AreEqual(10, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
226 } | 226 } |
227 | 227 |
228 [Test()] | 228 [Test()] |
229 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlot() | 229 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlot() |
230 { | 230 { |
234 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(25, false)); | 234 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(25, false)); |
235 Unit unit = GetUnit(unitType); | 235 Unit unit = GetUnit(unitType); |
236 Assert.AreEqual(3, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 236 Assert.AreEqual(3, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
237 Assert.AreEqual(3, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 237 Assert.AreEqual(3, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
238 Assert.AreEqual(25, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 238 Assert.AreEqual(25, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
239 Assert.AreEqual(IBBMath.Percentage(3, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 239 Assert.AreEqual(25, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
240 } | 240 } |
241 | 241 |
242 [Test()] | 242 [Test()] |
243 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithDifferentMinLimit() | 243 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithDifferentMinLimit() |
244 { | 244 { |
248 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(25, false)); | 248 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(25, false)); |
249 Unit unit = GetUnit(unitType); | 249 Unit unit = GetUnit(unitType); |
250 Assert.AreEqual(3, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 250 Assert.AreEqual(3, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
251 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 251 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
252 Assert.AreEqual(25, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 252 Assert.AreEqual(25, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
253 Assert.AreEqual(IBBMath.Percentage(1, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 253 Assert.AreEqual(10, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
254 } | 254 } |
255 | 255 |
256 [Test()] | 256 [Test()] |
257 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithMaxBelowSlotLimit() | 257 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithMaxBelowSlotLimit() |
258 { | 258 { |
262 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(75, false)); | 262 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(75, false)); |
263 Unit unit = GetUnit(unitType); | 263 Unit unit = GetUnit(unitType); |
264 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 264 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
265 Assert.AreEqual(7, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 265 Assert.AreEqual(7, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
266 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 266 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
267 Assert.AreEqual(IBBMath.Percentage(7, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 267 Assert.AreEqual(50, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
268 } | 268 } |
269 | 269 |
270 [Test()] | 270 [Test()] |
271 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithMaxBelowSlotLimitWithDifferentMinLimit() | 271 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithMaxBelowSlotLimitWithDifferentMinLimit() |
272 { | 272 { |
276 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(75, false)); | 276 unitType.AddEquipmentSlot(SLOT_NAME, new SimpleRoundedPercentageLimit(75, false)); |
277 Unit unit = GetUnit(unitType); | 277 Unit unit = GetUnit(unitType); |
278 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 278 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
279 Assert.AreEqual(3, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 279 Assert.AreEqual(3, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
280 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 280 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
281 Assert.AreEqual(IBBMath.Percentage(3, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 281 Assert.AreEqual(25, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
282 } | 282 } |
283 | 283 |
284 [Test()] | 284 [Test()] |
285 public void TestGetEquipmentCountsForPercentageLimitItemOnNumberLimitedSlotWithExistingEquipment() | 285 public void TestGetEquipmentCountsForPercentageLimitItemOnNumberLimitedSlotWithExistingEquipment() |
286 { | 286 { |
308 Unit unit = GetUnit(unitType); | 308 Unit unit = GetUnit(unitType); |
309 unit.SetEquipmentAmount(equip, 5); | 309 unit.SetEquipmentAmount(equip, 5); |
310 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 310 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
311 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 311 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
312 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 312 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
313 Assert.AreEqual(IBBMath.Percentage(1, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 313 Assert.AreEqual(10, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
314 } | 314 } |
315 | 315 |
316 [Test()] | 316 [Test()] |
317 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithExistingEquipment() | 317 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithExistingEquipment() |
318 { | 318 { |
340 Unit unit = GetUnit(unitType); | 340 Unit unit = GetUnit(unitType); |
341 unit.SetEquipmentAmount(equip, 5); | 341 unit.SetEquipmentAmount(equip, 5); |
342 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 342 Assert.AreEqual(7, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
343 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 343 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
344 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 344 Assert.AreEqual(50, UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
345 Assert.AreEqual(IBBMath.Percentage(1, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 345 Assert.AreEqual(10, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
346 } | 346 } |
347 | 347 |
348 [Test()] | 348 [Test()] |
349 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithExistingEquipmentWithDifferentMinimum() | 349 public void TestGetEquipmentCountsForPercentageLimitItemOnPercentageLimitedSlotWithExistingEquipmentWithDifferentMinimum() |
350 { | 350 { |
357 equip2.SlotName = SLOT_NAME; | 357 equip2.SlotName = SLOT_NAME; |
358 unit.SetEquipmentAmount(equip2, 5); | 358 unit.SetEquipmentAmount(equip2, 5); |
359 Assert.AreEqual(3, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); | 359 Assert.AreEqual(3, UnitEquipmentUtil.GetMaxEquipmentCount(unit, equip)); |
360 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); | 360 Assert.AreEqual(1, UnitEquipmentUtil.GetMinEquipmentCount(unit, equip)); |
361 Assert.AreEqual(IBBMath.Percentage(3, 15), UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); | 361 Assert.AreEqual(IBBMath.Percentage(3, 15), UnitEquipmentUtil.GetMaxEquipmentPercentage(unit, equip)); |
362 Assert.AreEqual(IBBMath.Percentage(1, 15), UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); | 362 Assert.AreEqual(10, UnitEquipmentUtil.GetMinEquipmentPercentage(unit, equip)); |
363 } | 363 } |
364 | 364 |
365 [Test()] | 365 [Test()] |
366 public void TestIsEquipmentRatioLimitsWithRatioLimitedEquipmentAndUnlimitedSlot() | 366 public void TestIsEquipmentRatioLimitsWithRatioLimitedEquipmentAndUnlimitedSlot() |
367 { | 367 { |