comparison API/Objects/Requirement/UnitRequiresAtLeastNUnitsRequirementTest.cs @ 132:8f1af48e120c

Re #27: Unit requirements * Add unit test for unit requirements in opposite order * Add unit test to make sure that requirement doesn't lock to first result, even after changes Also: * Clean up line endings to meet policy
author IBBoard <dev@ibboard.co.uk>
date Sun, 17 Apr 2011 19:34:48 +0000
parents c9fee4fdc9e8
children f36b5e5e51e6
comparison
equal deleted inserted replaced
131:5ede1c0a1454 132:8f1af48e120c
88 req.AddUnitTypeRequirement(unitType3); 88 req.AddUnitTypeRequirement(unitType3);
89 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Failed)); 89 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Failed));
90 } 90 }
91 91
92 [Test()] 92 [Test()]
93 public void TestAddingUnitTypeWithOtherOneUnitAndTwoUnitTypesRequired()
94 {
95 Army army = new Army(mockRace, "Test", 1000);
96 AddUnitOfTypeToArmy(unitType3, army);
97 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1);
98 req.AddUnitTypeRequirement(unitType2);
99 req.AddUnitTypeRequirement(unitType3);
100 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Failed));
101 }
102
103 [Test()]
93 public void TestAddingUnitTypeWithBothUnitsAndTwoUnitTypesRequired() 104 public void TestAddingUnitTypeWithBothUnitsAndTwoUnitTypesRequired()
94 { 105 {
95 Army army = new Army(mockRace, "Test", 1000); 106 Army army = new Army(mockRace, "Test", 1000);
96 AddUnitOfTypeToArmy(unitType2, army); 107 AddUnitOfTypeToArmy(unitType2, army);
97 AddUnitOfTypeToArmy(unitType3, army); 108 AddUnitOfTypeToArmy(unitType3, army);
137 { 148 {
138 Army army = new Army(mockRace, "Test", 1000); 149 Army army = new Army(mockRace, "Test", 1000);
139 AddUnitOfTypeToArmy(unitType2, army); 150 AddUnitOfTypeToArmy(unitType2, army);
140 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); 151 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1);
141 req.AddUnitTypeRequirement(unitType2); 152 req.AddUnitTypeRequirement(unitType2);
153 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Passed));
154 }
155
156 [Test()]
157 public void TestAddingUnitTypeMakesRequirementPass()
158 {
159 Army army = new Army(mockRace, "Test", 1000);
160 AddUnitOfTypeToArmy(unitType2, army);
161 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1);
162 req.AddUnitTypeRequirement(unitType2, 2);
163 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Failed));
164 AddUnitOfTypeToArmy(unitType2, army);
142 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Passed)); 165 Assert.That(req.AllowsAdding(unitType1, army), Is.EqualTo(Validation.Passed));
143 } 166 }
144 167
145 [Test()] 168 [Test()]
146 public void TestValidityOfArmyWithNoUnitsAndOneUnitTypeRequired() 169 public void TestValidityOfArmyWithNoUnitsAndOneUnitTypeRequired()