Beispiel #1
0
        public int CreateGame(Game game)
        {
            context.Games.Add(game);
            context.SaveChanges();

            return game.Id;
        }
Beispiel #2
0
        public void UpdateGame(Game game)
        {
            context.Games.Attach(game);
            var entry = context.Entry(game);
            entry.State = EntityState.Modified;

            context.SaveChanges();
        }
        public void UpdateGame(Game game)
        {
            var dbGame = Games.FirstOrDefault(g => g.Id == game.Id);

            if(dbGame != null)
            {
                dbGame = game;
            }
            else
            {
                CreateGame(game);
            }
        }
        public int CreateGame()
        {
            //var userId = Context.User.Identity.GetUserId<int>();

            var game = new Game() { CreateDate = DateTime.Now };

            var id = setRepo.CreateGame(game);

            games.Add("Game" + id, new SetGame());

            Clients.All.gameAdded(id);

            return id;
        }
Beispiel #5
0
        public void JoinGame_ShowFinishedScore()
        {
            double timeSet = -1;
            List<List<Card>> playerSets = null;

            // Arrange
            var mockRepo = new MockSetRepository();
            mockRepo.Users.Add(new ApplicationUser() { Id = 2, DisplayName = "TestPlayer" });

            var game = new Game();
            game.Id = 6;
            game.TotalSeconds = 25;
            game.PlayerGames = new List<PlayerGame>();
            game.PlayerGames.Add(new PlayerGame() {
                Id = 1,
                GameId = 6,
                PlayerId = 2,
                Score = 5,
                Player = new ApplicationUser() { DisplayName = "Player2" }
            });

            mockRepo.Games.Add(game);
            MultiplayerGameHub hub = new MultiplayerGameHub(mockRepo);

            var mockGroupManager = new Mock<IGroupManager>();
            hub.Groups = mockGroupManager.Object;

            var claim = new Claim("test", "2");
            var mockIdentity =
                Mock.Of<ClaimsIdentity>(ci => ci.FindFirst(It.IsAny<string>()) == claim);
            var mockContext = Mock.Of<HubCallerContext>(cc => cc.User.Identity == mockIdentity && cc.ConnectionId == "1");
            hub.Context = mockContext;

            var mockClients = new Mock<IHubCallerConnectionContext<dynamic>>();
            hub.Clients = mockClients.Object;
            dynamic all = new ExpandoObject();
            all.displayFinishedGame = new Action<List<PlayerViewModel>, double?>((players, time) =>
            {
                playerSets = players[0].Sets;
                timeSet = time.Value;
            });

            mockClients.Setup(m => m.Caller).Returns((ExpandoObject)all);

            // Act
            hub.JoinGame(6).Wait();

            // Assert
            Assert.IsNotNull(playerSets);
            Assert.AreEqual(5, playerSets.Count);
            Assert.AreEqual(25, timeSet);
        }
        private void ShowScore(Game game)
        {
            if (game != null)
            {
                var players = new List<PlayerViewModel>();

                if (game.PlayerGames != null)
                {
                    foreach (var pg in game.PlayerGames)
                    {
                        var pvm = new PlayerViewModel()
                        {
                            Id = pg.PlayerId,
                            Name = pg.Player.DisplayName,
                            Sets = new List<List<Card>>()
                        };

                        for (int i = 0; i < pg.Score; i++)
                        {
                            var cardList = new List<Card>()
                                            {
                                                new Card(),
                                                new Card(),
                                                new Card()
                                            };
                            pvm.Sets.Add(cardList);
                        }

                        players.Add(pvm);
                    }
                }

                Clients.Caller.displayFinishedGame(players, game.TotalSeconds);
            }
        }
 public int CreateGame(Game game)
 {
     game.Id = Games.Count + 1;
     Games.Add(game);
     return game.Id;
 }