Mercurial > repos > IBBoard.WarFoundry.API.Tests
view API/EventListeningWarFoundryLoader.cs @ 122:aa37b31976e6
Re #27: Unit requirements
* Restructure "check default" tests so that we actually check the default (test before and after)
* Add test to make sure requirement checks on each request
* Add test to make sure that adding more prohibited units than the limit causes a failure
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Sat, 09 Apr 2011 10:43:01 +0000 |
parents | 3c2c108a2f08 |
children | 0f144576e5eb |
line wrap: on
line source
using System; using IBBoard.WarFoundry.API.Factories; using System.Collections.Generic; using IBBoard.WarFoundry.API.Objects; namespace IBBoard.WarFoundry.API { public class EventListeningWarFoundryLoader : AbstractWarFoundryLoader { private IDictionary<string, GameSystem> gameSystems; private IDictionary<string, Race> races; private IDictionary<string, Army> armies; public EventListeningWarFoundryLoader() { gameSystems = new Dictionary<string, GameSystem>(); races = new Dictionary<string, Race>(); armies = new Dictionary<string, Army>(); } public override void RegisterFactory (INativeWarFoundryFactory factory) { base.RegisterFactory (factory); factory.GameSystemLoaded+= DoStoreGameSystem; factory.RaceLoaded+= DoStoreRace; } public override void UnregisterFactory (INativeWarFoundryFactory factory) { base.UnregisterFactory(factory); factory.GameSystemLoaded-= DoStoreGameSystem; factory.RaceLoaded-= DoStoreRace; } protected override GameSystem GetExistingSystemForSystem (GameSystem system) { throw new System.NotImplementedException(); } protected override void DoStoreGameSystem (GameSystem system) { gameSystems.Add(system.ID, system); } protected override void DoStoreRace (Race race) { races.Add(race.GameSystem.ID + race.ID, race); } public override GameSystem[] GetGameSystems () { throw new System.NotImplementedException(); } public override GameSystem GetGameSystem (string systemID) { return DictionaryUtils.GetValue(gameSystems, systemID); } protected override void RemoveGameSystem (GameSystem system) { throw new System.NotImplementedException(); } public override Race[] GetRaces (GameSystem system) { throw new System.NotImplementedException(); } public override Race GetRace (GameSystem system, string raceID) { return GetRace(system, raceID, ""); } public override Race GetRace (GameSystem system, string raceID, string raceSubID) { return DictionaryUtils.GetValue(races, raceID); } protected override void RemoveRace (Race race) { throw new System.NotImplementedException(); } } }