comparison API/Objects/Requirement/UnitRequiresAtLeastNUnitsRequirementTest.cs @ 125:c9fee4fdc9e8

Re #27: Unit requirements * Add matching test for unit type requiring at least N units
author IBBoard <dev@ibboard.co.uk>
date Sat, 09 Apr 2011 10:58:26 +0000
parents 5f389466e8a8
children 8f1af48e120c
comparison
equal deleted inserted replaced
124:14a007cf2446 125:c9fee4fdc9e8
183 Assert.That(req.ValidatesArmy(army), Is.EqualTo(Validation.Failed)); 183 Assert.That(req.ValidatesArmy(army), Is.EqualTo(Validation.Failed));
184 AddUnitOfTypeToArmy(unitType2, army); 184 AddUnitOfTypeToArmy(unitType2, army);
185 Assert.That(req.ValidatesArmy(army), Is.EqualTo(Validation.Passed)); 185 Assert.That(req.ValidatesArmy(army), Is.EqualTo(Validation.Passed));
186 } 186 }
187 187
188 [Test]
189 public void TestAddingMinNumberUnitTypePassesRequirement()
190 {
191 Army army = new Army(mockRace, "Test", 1000);
192 AddUnitOfTypeToArmy(unitType1, army);
193 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1);
194 req.AddUnitTypeRequirement(unitType2, 2);
195 Assert.That(req.AllowsAdding(unitType2, army), Is.EqualTo(Validation.Failed));
196 AddUnitOfTypeToArmy(unitType2, army);
197 Assert.That(req.AllowsAdding(unitType2, army), Is.EqualTo(Validation.Passed));
198 }
199
188 200
189 private static void AddUnitOfTypeToArmy(UnitType unitType, Army army) 201 private static void AddUnitOfTypeToArmy(UnitType unitType, Army army)
190 { 202 {
191 army.AddUnit(CreateUnitOfType(unitType, army)); 203 army.AddUnit(CreateUnitOfType(unitType, army));
192 } 204 }