Beispiel #1
0
        public void LeaveGame_WhenUserIsГuest_ShouldUpdateGameState()
        {
            Game updatedGame = new Game();
            mock.Setup(g => g.Users.GetAll()).Returns(new User[]
            {
                new User
                {
                    Id = 2,
                    Nickname = "creatorNickname",
                    Username = "******",
                    SessionKey = "10043IOvy7N9Bn9BDAk2mtT7ZcYKtZbBpdp00ZoIpJikyIJtef",
                },
            }.AsQueryable());

            mock.Setup(g => g.Games.GetById(It.IsAny<int>())).Returns(
                new Game()
                {
                    Password = null,
                    GameStatus = "Full",
                    RedUserId = 1,
                    Winner = new User(),
                    BlueUserId = 2,
                    BlueUser = new User(),
                });
            mock.Setup(u => u.Games.Update(It.IsAny<Game>())).Callback((Game game) => updatedGame = game);

            GameService gameSerivce = new GameService(mock.Object);
            gameSerivce.LeaveGame(1, "10043IOvy7N9Bn9BDAk2mtT7ZcYKtZbBpdp00ZoIpJikyIJtef");

            Assert.AreEqual("Open", updatedGame.GameStatus);
            Assert.IsNull(updatedGame.BlueUser);
        }
Beispiel #2
0
        public void LeaveGame_WhenUserIsCreator_ShouldNotUpdateGameState()
        {
            Game updatedGame = new Game();
            mock.Setup(g => g.Users.GetAll()).Returns(new User[]
            {
                new User
                {
                    Id = 1,
                    Nickname = "creatorNickname",
                    Username = "******",
                    SessionKey = "10043IOvy7N9Bn9BDAk2mtT7ZcYKtZbBpdp00ZoIpJikyIJtef",
                },
            }.AsQueryable());

            mock.Setup(g => g.Games.GetById(It.IsAny<int>())).Returns(
                new Game()
                {
                    Password = null,
                    GameStatus = "Full",
                    RedUserId = 1,
                    Winner = new User(),
                    BlueUserId = 2,
                });

            GameService gameSerivce = new GameService(mock.Object);
            gameSerivce.LeaveGame(1, "10043IOvy7N9Bn9BDAk2mtT7ZcYKtZbBpdp00ZoIpJikyIJtef");

            mock.Verify(u => u.Games.Update(It.IsAny<Game>()), Times.Never());
        }