Mercurial > repos > IBDev-IBBoard.WarFoundry.API.Tests
comparison API/Objects/Requirement/UnitRequiresNUnitsForMUnitsRequirementTests.cs @ 221:c40cb2048fc3
Re #394:
* Fix UnitRequiresNUnitsForMUnitsRequirementTests unit test so it actually does test the other value
* Add tests to "requires at least N" requirement and factory to test alternatives (Rollcall's "-1,X|Y" notation)
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sat, 24 Mar 2012 20:34:42 +0000 |
parents | 0fa634c6391b |
children | 12ac487af0ba |
comparison
equal
deleted
inserted
replaced
220:0fa634c6391b | 221:c40cb2048fc3 |
---|---|
166 { | 166 { |
167 Army army = new Army(mockRace, "Test", 1000); | 167 Army army = new Army(mockRace, "Test", 1000); |
168 UnitRequiresNUnitsForMUnitsRequirement req = new UnitRequiresNUnitsForMUnitsRequirement(unitType1); | 168 UnitRequiresNUnitsForMUnitsRequirement req = new UnitRequiresNUnitsForMUnitsRequirement(unitType1); |
169 req.AddUnitTypeRequirement(unitType2, unitType3); | 169 req.AddUnitTypeRequirement(unitType2, unitType3); |
170 Assert_That__FailsAdding(req, unitType1, army, "Army must contain: 1 × " + unitType2.Name + " or " + unitType3.Name + " for every 1 × " + unitType1.Name + " (would have 0 for 1)."); | 170 Assert_That__FailsAdding(req, unitType1, army, "Army must contain: 1 × " + unitType2.Name + " or " + unitType3.Name + " for every 1 × " + unitType1.Name + " (would have 0 for 1)."); |
171 AddUnitOfTypeToArmy(unitType2, army); | 171 AddUnitOfTypeToArmy(unitType3, army); |
172 Assert_That__PassesAdding(req, unitType1, army); | 172 Assert_That__PassesAdding(req, unitType1, army); |
173 } | 173 } |
174 | 174 |
175 [Test] | 175 [Test] |
176 public void TestAddingRequirementWithORWithLimit() | 176 public void TestAddingRequirementWithORWithLimit() |
401 Army army = new Army(mockRace, "Test", 1000); | 401 Army army = new Army(mockRace, "Test", 1000); |
402 UnitRequiresNUnitsForMUnitsRequirement req = new UnitRequiresNUnitsForMUnitsRequirement(unitType1); | 402 UnitRequiresNUnitsForMUnitsRequirement req = new UnitRequiresNUnitsForMUnitsRequirement(unitType1); |
403 req.AddUnitTypeRequirement(unitType2, unitType3); | 403 req.AddUnitTypeRequirement(unitType2, unitType3); |
404 AddUnitOfTypeToArmy(unitType1, army); | 404 AddUnitOfTypeToArmy(unitType1, army); |
405 Assert_That__ValidationFails(req, army, "Army must contain: 1 × " + unitType2.Name + " or " + unitType3.Name + " for every 1 × " + unitType1.Name + " (have 0 for 1)."); | 405 Assert_That__ValidationFails(req, army, "Army must contain: 1 × " + unitType2.Name + " or " + unitType3.Name + " for every 1 × " + unitType1.Name + " (have 0 for 1)."); |
406 AddUnitOfTypeToArmy(unitType2, army); | 406 AddUnitOfTypeToArmy(unitType3, army); |
407 Assert_That__ValidationPasses(req, army); | 407 Assert_That__ValidationPasses(req, army); |
408 } | 408 } |
409 | 409 |
410 [Test] | 410 [Test] |
411 public void TestRequirementWithORWithLimit() | 411 public void TestRequirementWithORWithLimit() |