Beispiel #1
0
        public void Jogo_TelaJogoNulo_ThrowException()
        {
            var jogador1 = new Jogador("DANILO");
            var jogador2 = new Jogador("GODOY");

            var gerenciadorPontuacaoAleatoria = new GerenciadorPontuacaoAleatoria();
            var gerenciadorPontuacaoJogo      = new GerenciadorPontuacaoJogo();
            GerenciadorTelaJogo telaJogo      = null;

            var gerenciadorJogo = new GerenciadorJogo(
                gerenciadorPontuacaoAleatoria,
                gerenciadorPontuacaoJogo,
                telaJogo,
                jogador1,
                jogador2);
        }
Beispiel #2
0
        public void Jogo_Jogador1NaoInformado_ThrowException()
        {
            Jogador jogador1 = null;
            var     jogador2 = new Jogador("GODOY");

            var gerenciadorPontuacaoAleatoria = new GerenciadorPontuacaoAleatoria();
            var gerenciadorPontuacaoJogo      = new GerenciadorPontuacaoJogo();
            var telaJogo = new GerenciadorTelaJogo();

            var gerenciadorJogo = new GerenciadorJogo(
                gerenciadorPontuacaoAleatoria,
                gerenciadorPontuacaoJogo,
                telaJogo,
                jogador1,
                jogador2);
        }
Beispiel #3
0
        public void Jogo_JogadoresComMesmoNome_ThrowException()
        {
            var jogador1 = new Jogador("DANILO");
            var jogador2 = new Jogador("DANILO");

            var gerenciadorPontuacaoAleatoria = new GerenciadorPontuacaoAleatoria();
            var gerenciadorPontuacaoJogo      = new GerenciadorPontuacaoJogo();
            var telaJogo = new GerenciadorTelaJogo();

            var gerenciadorJogo = new GerenciadorJogo(
                gerenciadorPontuacaoAleatoria,
                gerenciadorPontuacaoJogo,
                telaJogo,
                jogador1,
                jogador2);
        }
Beispiel #4
0
        public void AtualizarPontuacao_JogadorFazPonto_IncementacaoDePontuacao()
        {
            //Arrange
            var jogador1             = new Jogador("DANILO");
            var jogador2             = new Jogador("GODOY");
            var gerenciadorPontuacao = new GerenciadorPontuacaoJogo();

            //Act / Assert
            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador1.Nome);
            Assert.AreEqual(Pontos.Quinze, jogador1.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador1.Nome);
            Assert.AreEqual(Pontos.Trinta, jogador1.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador1.Nome);
            Assert.AreEqual(Pontos.Quarenta, jogador1.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador2.Nome);
            Assert.AreEqual(Pontos.Quinze, jogador2.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador2.Nome);
            Assert.AreEqual(Pontos.Quarenta, jogador1.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador2.Nome);
            Assert.AreEqual(Pontos.Quarenta, jogador2.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador1.Nome);
            Assert.AreEqual(Pontos.Quarenta, jogador2.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador2.Nome);
            Assert.AreEqual(Pontos.Quarenta, jogador2.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador2.Nome);
            Assert.AreEqual(Pontos.Vantagem, jogador2.Pontuacao);

            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador2.Nome);
            Assert.AreEqual(Pontos.Jogo, jogador2.Pontuacao);

            //Assert
            jogador2.Pontuacao = Pontos.Quarenta;
            jogador1.Pontuacao = Pontos.Vantagem;
            gerenciadorPontuacao.AtualizarPontuacao(jogador1, jogador2, jogador1.Nome);
            Assert.AreEqual(Pontos.Jogo, jogador1.Pontuacao);
        }
Beispiel #5
0
        public void Jogo_Jogador2SempreFazPontos_Jogador2Vence()
        {
            var jogador1 = new Jogador("DANILO");
            var jogador2 = new Jogador("GODOY");

            var gerenciadorPontuacaoAleatoria = new Fake_Jogador2SempreVence();
            var gerenciadorPontuacaoJogo      = new GerenciadorPontuacaoJogo();
            var telaJogo = new Fake_TelaJogo();

            var gerenciadorJogo = new GerenciadorJogo(
                gerenciadorPontuacaoAleatoria,
                gerenciadorPontuacaoJogo,
                telaJogo,
                jogador1,
                jogador2);

            var vencedor = gerenciadorJogo.Jogar();

            Assert.AreEqual(jogador2.Nome, vencedor);
        }
Beispiel #6
0
        static void Main(string[] args)
        {
            try
            {
                var jogador1 = new Jogador("Danilo");
                var jogador2 = new Jogador("Godoy");

                var resultadoJogoAleatorio   = new GerenciadorPontuacaoAleatoria();
                var gerenciadorPontuacaoJogo = new GerenciadorPontuacaoJogo();
                var telaJogo = new GerenciadorTelaJogo();

                var gerenciadorJogo = new GerenciadorJogo(resultadoJogoAleatorio, gerenciadorPontuacaoJogo, telaJogo, jogador1, jogador2);

                gerenciadorJogo.Jogar();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
Beispiel #7
0
        public void ValidarVencedor_JogadorMarcaPontos_JogadorVencedor()
        {
            //Arrange
            var jogador1 = new Jogador("DANILO");
            var jogador2 = new Jogador("GODOY");

            var gerenciadorPontuacao = new GerenciadorPontuacaoJogo();

            //Act / Assert
            jogador1.Pontuacao = Pontos.Quinze;
            jogador2.Pontuacao = Pontos.Zero;
            var winner = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);

            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Trinta;
            jogador2.Pontuacao = Pontos.Zero;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Quarenta;
            jogador2.Pontuacao = Pontos.Zero;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Zero;
            jogador2.Pontuacao = Pontos.Quinze;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Zero;
            jogador2.Pontuacao = Pontos.Trinta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Zero;
            jogador2.Pontuacao = Pontos.Quarenta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Zero;
            jogador2.Pontuacao = Pontos.Zero;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Quinze;
            jogador2.Pontuacao = Pontos.Quinze;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Trinta;
            jogador2.Pontuacao = Pontos.Trinta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Quarenta;
            jogador2.Pontuacao = Pontos.Quarenta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Vantagem;
            jogador2.Pontuacao = Pontos.Quarenta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Quarenta;
            jogador2.Pontuacao = Pontos.Vantagem;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual("", winner);

            jogador1.Pontuacao = Pontos.Jogo;
            jogador2.Pontuacao = Pontos.Zero;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador1.Nome, winner);

            jogador1.Pontuacao = Pontos.Jogo;
            jogador2.Pontuacao = Pontos.Quinze;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador1.Nome, winner);

            jogador1.Pontuacao = Pontos.Jogo;
            jogador2.Pontuacao = Pontos.Trinta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador1.Nome, winner);

            jogador1.Pontuacao = Pontos.Jogo;
            jogador2.Pontuacao = Pontos.Quarenta;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador1.Nome, winner);

            jogador1.Pontuacao = Pontos.Zero;
            jogador2.Pontuacao = Pontos.Jogo;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador2.Nome, winner);

            jogador1.Pontuacao = Pontos.Quinze;
            jogador2.Pontuacao = Pontos.Jogo;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador2.Nome, winner);

            jogador1.Pontuacao = Pontos.Trinta;
            jogador2.Pontuacao = Pontos.Jogo;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador2.Nome, winner);

            jogador1.Pontuacao = Pontos.Quarenta;
            jogador2.Pontuacao = Pontos.Jogo;
            winner             = gerenciadorPontuacao.ObterNomeJogadorVencedor(jogador1, jogador2);
            Assert.AreEqual(jogador2.Nome, winner);
        }