public void TroopFactorySetup() { troopTypes = new Dictionary <string, TroopType>(); string json = "{ 'Id':1,'Name':'Monkey','Type':'Ground','Damage':'6','Health':'50','PreferredTarget':'Ground','Template':'Basic'}"; TroopType monkey = TroopReader.ReadJson(json); troopTypes.Add(monkey.Name, monkey); }
public void ReadTroopsTest() { string path = TestContext.CurrentContext.TestDirectory; TroopReader reader = new TroopReader(path); Dictionary <string, TroopType> troopTypes = reader.Read(); Assert.AreEqual(troopTypes.Count, 4); }
public void ReadTemplateTest_NoBaseTroopError() { string contents = File.ReadAllText(flyingMonkeyJson); //Setup base monkey troop TroopReader troopReader = new TroopReader(); TemplateReader reader = new TemplateReader(contents, troopReader.TroopTypes); Assert.Throws <InvalidOperationException>(() => { TroopType flyingMonkey = reader.Read(); }); }
public void CreateTroop_Valid() { Dictionary <string, TroopType> troopTypes = new Dictionary <string, TroopType>(); string json = "{ 'Id':1,'Name':'Monkey','Type':'Ground','Damage':'6','Health':'50','PreferredTarget':'Ground','Template':'Basic'}"; TroopType monkey = TroopReader.ReadJson(json); troopTypes.Add(monkey.Name, monkey); TroopFactory factory = new TroopFactory(troopTypes); Troop t = factory.Create("Monkey"); Assert.AreEqual(t.Info, monkey); Assert.AreEqual(t.CurrentHealth, monkey.Health); }
public static TroopFactory Create() { Dictionary <string, TroopType> troopTypes = new Dictionary <string, TroopType>(); string monkeyJ = "{ 'Id':1,'Name':'Monkey','Type':'Ground','Damage':'6','Health':'50','PreferredTarget':'Ground','Template':'Basic'}"; string wizardJ = "{ 'Id':2,'Name':'Wizard','Type':'Ground','Damage':'6','Health':'60','PreferredTarget':'All','Template':'Basic'}"; string balloonJ = "{ 'Id':3,'Name':'Balloon','Type':'Air','Damage':'8','Health':'55','PreferredTarget':'Ground','Template':'Basic'}"; string fmonkeyJ = "{ 'Id':4,'Name':'Flying Monkey','Type':'Air','Damage':'6','Health':'50','PreferredTarget':'Air','Template':'Subtype'}"; troopTypes.Add("Monkey", TroopReader.ReadJson(monkeyJ)); troopTypes.Add("Wizard", TroopReader.ReadJson(wizardJ)); troopTypes.Add("Flying Monkey", TroopReader.ReadJson(fmonkeyJ)); troopTypes.Add("Balloon", TroopReader.ReadJson(balloonJ)); TroopFactory factory = new TroopFactory(troopTypes); return(factory); }
public void ReadTemplateTest_Valid() { string monkeyData = File.ReadAllText(monkeyJson); string contents = File.ReadAllText(flyingMonkeyJson); //Setup base monkey troop TroopReader troopReader = new TroopReader(); troopReader.AddJson(monkeyData); TroopType monkey = troopReader.TroopTypes["Monkey"]; TemplateReader reader = new TemplateReader(contents, troopReader.TroopTypes); TroopType flyingMonkey = reader.Read(); Assert.AreEqual(flyingMonkey.Damage, monkey.Damage); Assert.AreEqual(flyingMonkey.Health, monkey.Health); Assert.AreEqual(flyingMonkey.Type, "Air"); Assert.AreEqual(flyingMonkey.PreferredTarget, "Air"); }
static void Main(string[] args) { TroopReader troopReader = new TroopReader(); troopTypes = troopReader.Read(); TroopFactory troopFactory = new TroopFactory(troopTypes); ArmyReader armyReader = new ArmyReader(troopFactory); armies = armyReader.Read(); PrintArmy("Good Army"); Console.WriteLine(); PrintArmy("Bad Army"); Army a = armies["Good Army"]; Army b = armies["Bad Army"]; BattleSimulator sim = new BattleSimulator(a, b); sim.Battle(); Console.WriteLine(sim.Result); Console.ReadLine(); }