Example #1
0
        public async Task SlapOnlineTest()
        {
            var rnd    = new Random();
            var lg     = new AsyncLogger();
            var server = new Server();

            server.Start(stdPort);

            var player1 = new Player(PlayerType.PLAYER);
            var player2 = new Player(PlayerType.PLAYER);

            var game1 = new GameController(player1);
            var game2 = new GameController(player2);

            game1.StartOnline();
            game2.StartOnline();

            game1.Client.ClientSender.CreateLobby(stdPwd, true);
            game2.Client.ClientSender.JoinLobby(stdPwd);

            Assert.Null(await Record.ExceptionAsync(() => lg.WaitForLobbys(server, 1)));
            Assert.Null(await Record.ExceptionAsync(() => lg.WaitForClientsInLobbys(server, new Dictionary <int, int> {
                { 0, 2 }
            })));
            Assert.Null(await Record.ExceptionAsync(() => lg.WaitForClientValues(server)));

            var attacker = game2.Players[0].Units[0];
            var defender = game1.Players[0].Units[0];

            game2.CombatController.CombatCalcRedirect(attacker, defender, attacker.Abilities[0]);
        }