protected override void Seed(TeamDare.DAL.GameContext context) { var factory = new GameMasterFactory(); var gameMaster = (GameMaster)factory.CreateGameMaster(); var player = (Player)factory.CreatePlayer("tester"); player = (Player)factory.InitializeGameForPlayer(player, gameMaster); player.AppId = "000000"; player.AppNick = "tester"; context.GameMasters.Add(gameMaster); foreach (var adv in player.GamesHistory) { context.Adventures.Add((Adventure)adv); foreach (var challenge in adv.Challenges) { context.Challenges.Add((Challenge)challenge); } } context.Players.Add(player); context.SaveChanges(); base.Seed(context); }
private Activity WelcomeNewUser(Activity message) { var reply = message.CreateReply(GeneralResponses.WelcomeText); using (var context = new GameContext()) { var defaultGameMaster = context.GameMasters.First(); var factory = new GameMasterFactory(); var player = (Player)(factory.CreatePlayer(message.From.Name)); player = (Player)factory.InitializeGameForPlayer(player, defaultGameMaster); player.AppId = message.From.Id; player.AppNick = message.From.Id; player.GameMaster = defaultGameMaster; foreach (var adv in player.GamesHistory) { context.Adventures.Add((Adventure)adv); foreach (var challenge in adv.Challenges) { context.Challenges.Add((Challenge)challenge); } } context.Players.Add(player); context.SaveChanges(); } return(reply); }
public void TestInitializeGameForPlayer() { var factory = new GameMasterFactory(); var nick = "test"; var player = factory.CreatePlayer(nick); var gameMaster = factory.CreateGameMaster(); player = factory.InitializeGameForPlayer(player, gameMaster); Assert.IsNotNull(player); Assert.IsNotNull(player.GamesHistory); Assert.IsTrue(player.GamesHistory.Count == 3); Assert.IsTrue(player.GamesHistory.All(x => x.Id != Guid.Empty)); Assert.IsTrue(player.GamesHistory.Count(x => x.Order == 0) == 1); Assert.IsTrue(player.GamesHistory.Count(x => x.Order == 1) == 1); Assert.IsTrue(player.GamesHistory.Count(x => x.Order == 2) == 1); Assert.IsTrue(player.GamesHistory.All(x => x.Title != string.Empty)); Assert.IsTrue(player.GamesHistory.All(x => x.Hero == player)); Assert.IsTrue(player.GamesHistory.Select(g => g.Challenges).All(c => c.Count == 3)); Assert.IsTrue(player.GamesHistory.SelectMany(g => g.Challenges).Count(x => x.Order == 0) == 3); Assert.IsTrue(player.GamesHistory.SelectMany(g => g.Challenges).Count(x => x.Order == 1) == 3); Assert.IsTrue(player.GamesHistory.SelectMany(g => g.Challenges).Count(x => x.Order == 2) == 3); Assert.IsTrue(player.GamesHistory.SelectMany(g => g.Challenges).All(x => x.Id != Guid.Empty)); Assert.IsTrue(player.GamesHistory.SelectMany(g => g.Challenges).All(x => x.Hero == player)); Assert.IsTrue(player.GamesHistory.SelectMany(g => g.Challenges).All(x => x.Title != string.Empty)); }
public void TestGameCreation() { var factory = new GameMasterFactory(); var gameMaster = factory.CreateGameMaster(); Assert.IsNotNull(gameMaster); Assert.IsNotNull(gameMaster.Adventures); Assert.IsNotNull(gameMaster.Players); }
public void TestPlayerCreation() { var factory = new GameMasterFactory(); var nick = "test"; var player = factory.CreatePlayer(nick); Assert.IsNotNull(player); Assert.AreEqual(player.Nick, nick); Assert.IsTrue(player.Level == 0); }
static void Main(string[] args) { using (var db = new GameContext()) { var factory = new GameMasterFactory(); Console.WriteLine("save gm"); var gameMasters = from b in db.GameMasters orderby b.Id select b; Console.WriteLine("query gm"); Console.WriteLine("All game masters in the database:"); foreach (var item in gameMasters) { Console.WriteLine(item.Id); foreach (var player in item.Players) { Console.WriteLine(player.Id); Console.WriteLine(player.Nick); foreach (var adv in player.GamesHistory) { Console.WriteLine(adv.Id); Console.WriteLine(adv.Title); Console.WriteLine(adv.Order); foreach (var ch in adv.Challenges) { Console.WriteLine(String.Format("\t{0}", ch.Id)); Console.WriteLine(String.Format("\t{0}", ch.Title)); Console.WriteLine(String.Format("\t{0}", ch.Order)); } } } //Console.WriteLine(String.Join(", ",(item.Players.Select(x=>((Reward)x.Rewards).Id).ToList()))); } Console.WriteLine("Press any key to exit..."); Console.ReadKey(); } }