annotate API/Objects/Requirement/AbstractUnitTypeUnitRequirementTest.cs @ 237:833f72be715a default tip

* Remove rogue print statements
author IBBoard <dev@ibboard.co.uk>
date Tue, 06 Nov 2012 20:58:48 +0000
parents 5e03b68dd214
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
217
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
1 // This file (AbstractUnitTypeUnitRequirementTest.cs) is a part of the IBBoard.WarFoundry.API.Tests project and is copyright 2012 IBBoard
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
2 //
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
3 // The file and the library/program it is in are licensed and distributed, without warranty, under the GNU Affero GPL license, either version 3 of the License or (at your option) any later version. Please see COPYING for more information and the full license.
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
4 using System;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
5 using NUnit.Framework;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
6 using IBBoard.WarFoundry.API.Objects.Mock;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
7
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
8 namespace IBBoard.WarFoundry.API.Objects.Requirement
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
9 {
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
10 public abstract class AbstractUnitTypeUnitRequirementTest<OBJECT_TYPE, TEST_CLASS> : AbstractUnitRequirementTest<OBJECT_TYPE, TEST_CLASS> where OBJECT_TYPE : UnitType where TEST_CLASS : AbstractUnitRequirement<OBJECT_TYPE>
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
11 {
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
12 protected MockRace mockRace;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
13 protected UnitType unitType1;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
14 protected UnitType unitType2;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
15 protected UnitType unitType3;
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
16
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
17 [TestFixtureSetUp()]
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
18 public void SetupRace()
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
19 {
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
20 mockRace = new MockRace();
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
21 unitType1 = new MockUnitType("type1", "Unit Type 1");
231
5e03b68dd214 Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents: 217
diff changeset
22 unitType1.MinSize = 1;
217
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
23 mockRace.AddUnitType(unitType1);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
24 unitType2 = new MockUnitType("type2", "Unit Type 2");
231
5e03b68dd214 Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents: 217
diff changeset
25 unitType2.MinSize = 5;
5e03b68dd214 Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents: 217
diff changeset
26 unitType2.AddContainedUnitType(unitType1);
217
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
27 mockRace.AddUnitType(unitType2);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
28 unitType3 = new MockUnitType("type3", "Unit Type 3");
231
5e03b68dd214 Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents: 217
diff changeset
29 unitType3.MinSize = 1;
5e03b68dd214 Re #410: Create "N units per M models in parent unit" requirement
IBBoard <dev@ibboard.co.uk>
parents: 217
diff changeset
30 unitType3.AddContainedUnitType(unitType1);
217
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
31 mockRace.AddUnitType(unitType3);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
32 }
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
33
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
34 public override TEST_CLASS GetObject()
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
35 {
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
36 return CreateRequirement(unitType1);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
37 }
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
38
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
39 public override TEST_CLASS GetSameObject()
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
40 {
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
41 return CreateRequirement(unitType1);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
42 }
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
43
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
44 public override TEST_CLASS GetDifferentObject()
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
45 {
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
46 return CreateRequirement(unitType2);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
47 }
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
48
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
49 protected abstract TEST_CLASS CreateRequirement(UnitType requirementOn);
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
50 }
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
51 }
9bf34e88da89 Re #379: Fix validation of requirements to check for unit
IBBoard <dev@ibboard.co.uk>
parents:
diff changeset
52