Mercurial > repos > IBDev-IBBoard.WarFoundry.API.Tests
comparison API/Objects/Requirement/UnitRequiresAtLeastNUnitsRequirementTest.cs @ 208:c323770e61c2
Re #379: Fix validation of requirements to check for unit
* Rename classes in tests to match API changes
* Alter tests to match new API (all classes require at least one UnitType that they're relevant to now)
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Wed, 22 Feb 2012 20:48:40 +0000 |
parents | 27f163bf884a |
children | 325943cb1db0 |
comparison
equal
deleted
inserted
replaced
207:27f163bf884a | 208:c323770e61c2 |
---|---|
211 [Test] | 211 [Test] |
212 public void TestAddingMinNumberUnitTypePassesRequirement() | 212 public void TestAddingMinNumberUnitTypePassesRequirement() |
213 { | 213 { |
214 Army army = new Army(mockRace, "Test", 1000); | 214 Army army = new Army(mockRace, "Test", 1000); |
215 AddUnitOfTypeToArmy(unitType1, army); | 215 AddUnitOfTypeToArmy(unitType1, army); |
216 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 216 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
217 req.AddUnitTypeRequirement(unitType2, 2); | 217 req.AddUnitTypeRequirement(unitType2, 2); |
218 Assert.That(req.AllowsAdding(unitType2, army), Is.EqualTo(Validation.Failed)); | 218 Assert.That(req.AllowsAdding(unitType2, army), Is.EqualTo(Validation.Failed)); |
219 AddUnitOfTypeToArmy(unitType2, army); | 219 AddUnitOfTypeToArmy(unitType2, army); |
220 Assert.That(req.AllowsAdding(unitType2, army), Is.EqualTo(Validation.Passed)); | 220 Assert.That(req.AllowsAdding(unitType2, army), Is.EqualTo(Validation.Passed)); |
221 } | 221 } |
224 public void TestValidationMessageIsBlankForPass() | 224 public void TestValidationMessageIsBlankForPass() |
225 { | 225 { |
226 Army army = new Army(mockRace, "Test", 1000); | 226 Army army = new Army(mockRace, "Test", 1000); |
227 AddUnitOfTypeToArmy(unitType1, army); | 227 AddUnitOfTypeToArmy(unitType1, army); |
228 AddUnitOfTypeToArmy(unitType2, army); | 228 AddUnitOfTypeToArmy(unitType2, army); |
229 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 229 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
230 req.AddUnitTypeRequirement(unitType2); | 230 req.AddUnitTypeRequirement(unitType2); |
231 Assert.That(req.GetValidationMessage(army), Is.Empty); | 231 Assert.That(req.GetValidationMessage(army), Is.Empty); |
232 } | 232 } |
233 | 233 |
234 [Test] | 234 [Test] |
235 public void TestValidationMessageIsCorrectForFailWithOneUnitRequired() | 235 public void TestValidationMessageIsCorrectForFailWithOneUnitRequired() |
236 { | 236 { |
237 Army army = new Army(mockRace, "Test", 1000); | 237 Army army = new Army(mockRace, "Test", 1000); |
238 AddUnitOfTypeToArmy(unitType1, army); | 238 AddUnitOfTypeToArmy(unitType1, army); |
239 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 239 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
240 req.AddUnitTypeRequirement(unitType2); | 240 req.AddUnitTypeRequirement(unitType2); |
241 Assert.That(req.GetValidationMessage(army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (have 0).")); | 241 Assert.That(req.GetValidationMessage(army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (have 0).")); |
242 } | 242 } |
243 | 243 |
244 [Test] | 244 [Test] |
245 public void TestValidationMessageIsCorrectForFailWithTwoOfOneUnitRequired() | 245 public void TestValidationMessageIsCorrectForFailWithTwoOfOneUnitRequired() |
246 { | 246 { |
247 Army army = new Army(mockRace, "Test", 1000); | 247 Army army = new Army(mockRace, "Test", 1000); |
248 AddUnitOfTypeToArmy(unitType1, army); | 248 AddUnitOfTypeToArmy(unitType1, army); |
249 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 249 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
250 req.AddUnitTypeRequirement(unitType2, 2); | 250 req.AddUnitTypeRequirement(unitType2, 2); |
251 Assert.That(req.GetValidationMessage(army), Is.EqualTo("Army must contain: 2 × " + unitType2.Name + " (have 0).")); | 251 Assert.That(req.GetValidationMessage(army), Is.EqualTo("Army must contain: 2 × " + unitType2.Name + " (have 0).")); |
252 } | 252 } |
253 | 253 |
254 [Test] | 254 [Test] |
255 public void TestValidationMessageIsCorrectForFailWithTwoUnitsRequired() | 255 public void TestValidationMessageIsCorrectForFailWithTwoUnitsRequired() |
256 { | 256 { |
257 Army army = new Army(mockRace, "Test", 1000); | 257 Army army = new Army(mockRace, "Test", 1000); |
258 AddUnitOfTypeToArmy(unitType1, army); | 258 AddUnitOfTypeToArmy(unitType1, army); |
259 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 259 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
260 req.AddUnitTypeRequirement(unitType2); | 260 req.AddUnitTypeRequirement(unitType2); |
261 req.AddUnitTypeRequirement(unitType3); | 261 req.AddUnitTypeRequirement(unitType3); |
262 Assert.That(req.GetValidationMessage(army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (have 0); 1 × " + unitType3.Name + " (have 0).")); | 262 Assert.That(req.GetValidationMessage(army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (have 0); 1 × " + unitType3.Name + " (have 0).")); |
263 } | 263 } |
264 | 264 |
265 [Test] | 265 [Test] |
266 public void TestAllowsAddingMessageIsBlankForPass() | 266 public void TestAllowsAddingMessageIsBlankForPass() |
267 { | 267 { |
268 Army army = new Army(mockRace, "Test", 1000); | 268 Army army = new Army(mockRace, "Test", 1000); |
269 AddUnitOfTypeToArmy(unitType1, army); | 269 AddUnitOfTypeToArmy(unitType1, army); |
270 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 270 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
271 Assert.That(req.GetAllowsAddingMessage(unitType1, army), Is.Empty); | 271 Assert.That(req.GetAllowsAddingMessage(unitType1, army), Is.Empty); |
272 } | 272 } |
273 | 273 |
274 [Test] | 274 [Test] |
275 public void TestAllowsAddingMessageIsCorrectForFailWithTwoOfOneUnitRequired() | 275 public void TestAllowsAddingMessageIsCorrectForFailWithTwoOfOneUnitRequired() |
276 { | 276 { |
277 Army army = new Army(mockRace, "Test", 1000); | 277 Army army = new Army(mockRace, "Test", 1000); |
278 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 278 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
279 req.AddUnitTypeRequirement(unitType2, 2); | 279 req.AddUnitTypeRequirement(unitType2, 2); |
280 Assert.That(req.GetAllowsAddingMessage(unitType2, army), Is.EqualTo("Army must contain: 2 × " + unitType2.Name + " (would have 1).")); | 280 Assert.That(req.GetAllowsAddingMessage(unitType2, army), Is.EqualTo("Army must contain: 2 × " + unitType2.Name + " (would have 1).")); |
281 } | 281 } |
282 | 282 |
283 [Test] | 283 [Test] |
284 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequired() | 284 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequired() |
285 { | 285 { |
286 Army army = new Army(mockRace, "Test", 1000); | 286 Army army = new Army(mockRace, "Test", 1000); |
287 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 287 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
288 req.AddUnitTypeRequirement(unitType2); | 288 req.AddUnitTypeRequirement(unitType2); |
289 req.AddUnitTypeRequirement(unitType3); | 289 req.AddUnitTypeRequirement(unitType3); |
290 Assert.That(req.GetAllowsAddingMessage(unitType2, army), Is.EqualTo("Army must contain: 1 × " + unitType3.Name + " (would have 0).")); | 290 Assert.That(req.GetAllowsAddingMessage(unitType2, army), Is.EqualTo("Army must contain: 1 × " + unitType3.Name + " (would have 0).")); |
291 } | 291 } |
292 | 292 |
293 [Test] | 293 [Test] |
294 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequiredOtherUnit() | 294 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequiredOtherUnit() |
295 { | 295 { |
296 Army army = new Army(mockRace, "Test", 1000); | 296 Army army = new Army(mockRace, "Test", 1000); |
297 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 297 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
298 req.AddUnitTypeRequirement(unitType2); | 298 req.AddUnitTypeRequirement(unitType2); |
299 req.AddUnitTypeRequirement(unitType3); | 299 req.AddUnitTypeRequirement(unitType3); |
300 Assert.That(req.GetAllowsAddingMessage(unitType3, army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (would have 0).")); | 300 Assert.That(req.GetAllowsAddingMessage(unitType3, army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (would have 0).")); |
301 } | 301 } |
302 | 302 |
303 [Test] | 303 [Test] |
304 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequiredWithOneUnit() | 304 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequiredWithOneUnit() |
305 { | 305 { |
306 Army army = new Army(mockRace, "Test", 1000); | 306 Army army = new Army(mockRace, "Test", 1000); |
307 AddUnitOfTypeToArmy(unitType2, army); | 307 AddUnitOfTypeToArmy(unitType2, army); |
308 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 308 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
309 req.AddUnitTypeRequirement(unitType2); | 309 req.AddUnitTypeRequirement(unitType2); |
310 req.AddUnitTypeRequirement(unitType3); | 310 req.AddUnitTypeRequirement(unitType3); |
311 Assert.That(req.GetAllowsAddingMessage(unitType2, army), Is.EqualTo("Army must contain: 1 × " + unitType3.Name + " (would have 0).")); | 311 Assert.That(req.GetAllowsAddingMessage(unitType2, army), Is.EqualTo("Army must contain: 1 × " + unitType3.Name + " (would have 0).")); |
312 } | 312 } |
313 | 313 |
314 [Test] | 314 [Test] |
315 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequiredWithOtherUnit() | 315 public void TestAllowsAddingMessageIsCorrectForFailWithTwoUnitsRequiredWithOtherUnit() |
316 { | 316 { |
317 Army army = new Army(mockRace, "Test", 1000); | 317 Army army = new Army(mockRace, "Test", 1000); |
318 AddUnitOfTypeToArmy(unitType3, army); | 318 AddUnitOfTypeToArmy(unitType3, army); |
319 RequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); | 319 UnitRequiresAtLeastNUnitsRequirement req = new UnitRequiresAtLeastNUnitsRequirement(unitType1); |
320 req.AddUnitTypeRequirement(unitType2); | 320 req.AddUnitTypeRequirement(unitType2); |
321 req.AddUnitTypeRequirement(unitType3); | 321 req.AddUnitTypeRequirement(unitType3); |
322 Assert.That(req.GetAllowsAddingMessage(unitType3, army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (would have 0).")); | 322 Assert.That(req.GetAllowsAddingMessage(unitType3, army), Is.EqualTo("Army must contain: 1 × " + unitType2.Name + " (would have 0).")); |
323 } | 323 } |
324 | 324 |