Esempio n. 1
0
        public void PlayRandomGame(GameValue aValue, GameValue cValue, bool aWin)
        {
            var gameService = new GameServiceImpl(seed);
            var a           = new User("a", "b")
            {
                Id = 1
            };
            var c = new User("c", "b")
            {
                Id = 2
            };
            var comp1 = gameService.JoinGame(a, GameType.RandomCompetitor);
            var comp2 = gameService.JoinGame(c, GameType.RandomCompetitor);

            Assert.AreEqual(null, comp1);
            Assert.AreEqual(a, comp2);

            var intermediateResult = gameService.Play(a, aValue);

            Assert.AreEqual(GameResult.NotCompleted, intermediateResult.Result);
            Assert.AreEqual(null, intermediateResult.Winner);
            Assert.AreEqual(null, intermediateResult.Looser);

            var result = gameService.Play(c, cValue);

            Assert.AreEqual(GameResult.HasWinner, result.Result);
            Assert.AreEqual(aWin ? a : c, result.Winner);
            Assert.AreEqual(aWin ? c : a, result.Looser);
        }
Esempio n. 2
0
        public async Task <string> GetPlayers(string gameName)
        {
            GameService service = new GameServiceImpl();
            var         result  = await service.GetPlayersByGame(gameName);

            return(JsonConvert.SerializeObject(result));
        }
Esempio n. 3
0
        public void PlayRandomGameDraw()
        {
            var gameService = new GameServiceImpl(seed);
            var a           = new User("a", "b")
            {
                Id = 1
            };
            var c = new User("c", "b")
            {
                Id = 2
            };

            gameService.JoinGame(a, GameType.RandomCompetitor);
            gameService.JoinGame(c, GameType.RandomCompetitor);

            var intermediateResult = gameService.Play(a, GameValue.Paper);

            Assert.AreEqual(GameResult.NotCompleted, intermediateResult.Result);
            Assert.AreEqual(null, intermediateResult.Winner);
            Assert.AreEqual(null, intermediateResult.Looser);

            var result = gameService.Play(c, GameValue.Paper);

            Assert.AreEqual(GameResult.Draw, result.Result);
            Assert.AreEqual(a, result.Winner);
            Assert.AreEqual(c, result.Looser);
        }
Esempio n. 4
0
        public void PlaySeveralTimes()
        {
            var gameService = new GameServiceImpl(seed);
            var a           = new User("a", "b")
            {
                Id = 1
            };
            var c = new User("c", "b")
            {
                Id = 2
            };

            gameService.JoinGame(a, GameType.RandomCompetitor);
            gameService.JoinGame(c, GameType.RandomCompetitor);
            for (var i = 0; i < 3; i++)
            {
                var intermediateResult = gameService.Play(a, GameValue.Paper);
                Assert.AreEqual(GameResult.NotCompleted, intermediateResult.Result);
                Assert.AreEqual(null, intermediateResult.Winner);
                Assert.AreEqual(null, intermediateResult.Looser);
                var result = gameService.Play(c, GameValue.Rock);
                Assert.AreEqual(GameResult.HasWinner, result.Result);
                Assert.AreEqual(a, result.Winner);
                Assert.AreEqual(c, result.Looser);
                result.EndGame();
            }
        }
Esempio n. 5
0
        public void JoinRandomGameTest()
        {
            var gameService = new GameServiceImpl(seed);
            var user        = new User("a", "b");

            gameService.JoinGame(user, GameType.RandomCompetitor);
            Assert.AreEqual(1, gameService.WaitingUsers.Count);
        }
 public void Start_Was_Called()
 {
     _gameView       = new Mock <GameView>();
     _taskProvider   = new Mock <TaskProvider>();
     gameServiceTest = new GameServiceImpl(_gameView.Object, _taskProvider.Object);
     _gameView.Setup(x => x.showTask(It.IsAny <Task>()));
     gameServiceTest.start();
     _gameView.VerifyAll();
 }
 public void guessLetter_and_showCongratulations_Was_Called()
 {
     _gameView       = new Mock <GameView>();
     _taskProvider   = new Mock <TaskProvider>();
     gameServiceTest = new GameServiceImpl(_gameView.Object, _taskProvider.Object);
     _gameView.Setup(x => x.showCongratulations(It.IsAny <String>()));
     _taskProvider.Setup(x => x.get()).Returns(new Task()
     {
         Answer   = "Kiev",
         Question = "What is the capital of Ukraine?"
     });
     gameServiceTest.guessLetter("K");
     _gameView.VerifyAll();
 }
Esempio n. 8
0
        public void MultipleJoinRandomGameTest(int count, int result, int gameCount)
        {
            var gameService = new GameServiceImpl(seed);

            for (var i = 0; i < count; i++)
            {
                gameService.JoinGame(new User(i.ToString(), "b")
                {
                    Id = i
                }, GameType.RandomCompetitor);
            }
            Assert.AreEqual(result, gameService.WaitingUsers.Count, "Users count");
            Assert.AreEqual(gameCount, gameService.Games.Count, "Games count");
        }
Esempio n. 9
0
        public void PlyWithBot()
        {
            var gameService = new GameServiceImpl(seed);
            var a           = new User("a", "b")
            {
                Id = 1
            };

            gameService.JoinGame(a, GameType.Bot);

            var result = gameService.Play(a, GameValue.Paper);

            Assert.AreEqual(GameValue.Rock, result.Looser.Value);
            Assert.AreEqual(GameResult.HasWinner, result.Result);
            Assert.AreEqual(a, result.Winner);
        }
Esempio n. 10
0
        public void Listen(UnitySyncContext syncContext, IGameObjectFactory enemyFactory, Game game)
        {
            mServer = new Server();
            mServer.Ports.Add(new ServerPort(IPAddress.Any.ToString(), GameUtils.GamePort, ServerCredentials.Insecure));
            mServer.Services.Add(GameService.BindService(mGameService = new GameServiceImpl(game, enemyFactory, syncContext)));
            mGameService.MessageRecived += GameServiceOnMessageRecived;

            var meeleeWarriorService = new MeeleeWarriorServiceImpl();

            MeeleeWarriorRegistrator = meeleeWarriorService;
            mServer.Services.Add(MeeleeWarriorService.BindService(meeleeWarriorService));

            var rangedWarriorService = new RangedWarriorServiceImpl();

            RangedWarriorRegistrator = rangedWarriorService;
            mServer.Services.Add(RangedWarriorService.BindService(rangedWarriorService));

            var workerService = new WorkerServiceImpl();

            WorkerRegistrator = workerService;
            mServer.Services.Add(WorkerService.BindService(workerService));

            var buildingTemplateService = new BuildingTemplateServiceImpl();

            BuildingTemplateRegistrator = buildingTemplateService;
            mServer.Services.Add(BuildingTemplateService.BindService(buildingTemplateService));

            var centralBuildingService = new CentralBuildingServiceImpl();

            CentralBuildingRegistrator = centralBuildingService;
            mServer.Services.Add(CentralBuildingService.BindService(centralBuildingService));

            var miningCampService = new MiningCampServiceImpl();

            MiningCampRegistrator = miningCampService;
            mServer.Services.Add(MiningCampService.BindService(miningCampService));

            var barrakService = new BarrakServiceImpl();

            BarrakRegistrator = barrakService;
            mServer.Services.Add(BarrakService.BindService(barrakService));

            mServer.Start();
        }
Esempio n. 11
0
        public void LeaveGameTest()
        {
            var gameService = new GameServiceImpl(seed);
            var a           = new User("a", "b")
            {
                Id = 1
            };
            var c = new User("c", "b")
            {
                Id = 2
            };
            var comp1 = gameService.JoinGame(a, GameType.RandomCompetitor);
            var comp2 = gameService.JoinGame(c, GameType.RandomCompetitor);

            var comp = gameService.LeaveGame(a);

            Assert.AreEqual(c, comp);
            Assert.AreEqual(0, gameService.WaitingUsers.Count);
            Assert.AreEqual(0, gameService.Games.Count);
        }
Esempio n. 12
0
        public void DoubleJoiningTest()
        {
            var gameService = new GameServiceImpl(seed);
            var a           = new User("a", "b")
            {
                Id = 1
            };
            var c = new User("c", "b")
            {
                Id = 2
            };
            var comp1 = gameService.JoinGame(a, GameType.RandomCompetitor);
            var comp2 = gameService.JoinGame(c, GameType.RandomCompetitor);

            Assert.AreEqual(1, gameService.Games.Count, "Games count");
            gameService.JoinGame(a, GameType.RandomCompetitor);
            gameService.JoinGame(c, GameType.RandomCompetitor);

            Assert.AreEqual(0, gameService.WaitingUsers.Count, "Users count");
            Assert.AreEqual(1, gameService.Games.Count, "Games count");
        }
        public void TestStart()
        {
            var questionProvider = new Mock <IQuestionProvider>();

            var question = new Question()
            {
                question = "What colour of oranges?",
                answer   = "Oranges"
            };

            questionProvider.Setup(x => x.get()).Returns(question);

            var gameView = new Mock <IGameView>();

            var gameservice = new GameServiceImpl(questionProvider.Object, gameView.Object);

            gameservice.start();

            gameView.Verify(x => x.showQuestion(question));
            gameView.Verify(x => x.showCurrentGuess("*******"));
        }
Esempio n. 14
0
        public async Task <ActionResult> Bank(string gameName)
        {
            GameService service = new GameServiceImpl();

            return(View(await service.GetPlayersByGame(gameName)));
        }