public void InvalidNumberOfPins()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            Assert.ThrowsException <ArgumentOutOfRangeException>(() => jogoDeBoliche.Jogar(-1));

            Assert.ThrowsException <ArgumentOutOfRangeException>(() => jogoDeBoliche.Jogar(11));
        }
        public void MaximumNumberOfThrowsNoStrikes()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            for (int i = 0; i < 21; i++)
            {
                jogoDeBoliche.Jogar(5);
            }

            Assert.ThrowsException <InvalidOperationException>(() => jogoDeBoliche.Jogar(1));
        }
        public void InvalidLastThrow()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            for (int i = 0; i < 20; i++)
            {
                jogoDeBoliche.Jogar(1);
            }

            Assert.ThrowsException <InvalidOperationException>(() => jogoDeBoliche.Jogar(1));
        }
        public void InvalidNumberOfPinsForThrow()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            jogoDeBoliche.Jogar(10);
            jogoDeBoliche.Jogar(1);
            jogoDeBoliche.Jogar(9);
            jogoDeBoliche.Jogar(1);

            Assert.ThrowsException <ArgumentException>(() => jogoDeBoliche.Jogar(10));
        }
        public void MaximumNumberOfThrowsSpareOnLastFrame()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            for (int i = 0; i < 9; i++)
            {
                jogoDeBoliche.Jogar(10);
            }

            jogoDeBoliche.Jogar(8);
            jogoDeBoliche.Jogar(2);
            jogoDeBoliche.Jogar(5);
        }
        public void InvalidNumberOfPinsSecondThrowLastFrame()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            for (int i = 0; i < 9; i++)
            {
                jogoDeBoliche.Jogar(10);
            }

            jogoDeBoliche.Jogar(5);

            Assert.ThrowsException <ArgumentException>(() => jogoDeBoliche.Jogar(6));
        }
        public void MaximumPoints()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            for (int i = 0; i < 12; i++)
            {
                jogoDeBoliche.Jogar(10);
            }

            int points = jogoDeBoliche.ObterPontuacao();

            Assert.AreEqual(300, points);
        }
        public void FullGameExampleFour()
        {
            JogoDeBoliche jogoDeBoliche = new JogoDeBoliche(new TenPinBowlingGame(new TenPinBowlingScore()));

            // Frame 1
            jogoDeBoliche.Jogar(2);
            jogoDeBoliche.Jogar(5);

            // Frame 2
            jogoDeBoliche.Jogar(0);
            jogoDeBoliche.Jogar(10);

            // Frame 3
            jogoDeBoliche.Jogar(4);
            jogoDeBoliche.Jogar(5);

            // Frame 4
            jogoDeBoliche.Jogar(1);
            jogoDeBoliche.Jogar(6);

            // Frame 5
            jogoDeBoliche.Jogar(0);
            jogoDeBoliche.Jogar(8);

            // Frame 6
            jogoDeBoliche.Jogar(0);
            jogoDeBoliche.Jogar(10);

            // Frame 7
            jogoDeBoliche.Jogar(5);
            jogoDeBoliche.Jogar(5);

            // Frame 8
            jogoDeBoliche.Jogar(3);
            jogoDeBoliche.Jogar(5);

            // Frame 9
            jogoDeBoliche.Jogar(1);
            jogoDeBoliche.Jogar(6);

            // Frame 10
            jogoDeBoliche.Jogar(10);
            jogoDeBoliche.Jogar(0);
            jogoDeBoliche.Jogar(7);

            int points = jogoDeBoliche.ObterPontuacao();

            Assert.AreEqual(105, points);
        }
Esempio n. 9
0
        public void TestarJogoSemBonus()
        {
            var validacoesDeBonus = new JogoBonusValidacoes();
            var calculosDeBonus   = new JogoBonusCalculos();
            var Jogo = new JogoDeBoliche(validacoesDeBonus, calculosDeBonus);

            for (int i = 0; i < 20; i++)
            {
                Jogo.Jogar(1);
            }
            //Preparação
            int pontuacao = Jogo.ObterPontuacao();

            //Validação
            Assert.AreEqual(pontuacao, 20);
        }
Esempio n. 10
0
        public void JogandoTodosOsStrikesPossiveis()
        {
            var validacoesDeBonus = new JogoBonusValidacoes();
            var calculosDeBonus   = new JogoBonusCalculos();
            var Jogo = new JogoDeBoliche(validacoesDeBonus, calculosDeBonus);

            for (int i = 0; i < 12; i++)
            {
                Jogo.Jogar(10);
            }

            //Preparação
            int pontuacao = Jogo.ObterPontuacao();

            //Validação
            Assert.AreEqual(pontuacao, 300);
        }
Esempio n. 11
0
        public void TestarEnunciado()
        {
            var validacoesDeBonus = new JogoBonusValidacoes();
            var calculosDeBonus   = new JogoBonusCalculos();
            var Jogo = new JogoDeBoliche(validacoesDeBonus, calculosDeBonus);

            //Jogo do enunciado.
            //1 Quadro
            Jogo.Jogar(1);
            Jogo.Jogar(4);
            //2 Quadro
            Jogo.Jogar(4);
            Jogo.Jogar(5);
            //3 Quadro
            Jogo.Jogar(6);
            Jogo.Jogar(4);
            //4 Quadro
            Jogo.Jogar(5);
            Jogo.Jogar(5);
            //5 Quadro
            Jogo.Jogar(10);
            //6 Quadro
            Jogo.Jogar(0);
            Jogo.Jogar(1);
            //7 Quadro
            Jogo.Jogar(7);
            Jogo.Jogar(3);
            //8 Quadro
            Jogo.Jogar(6);
            Jogo.Jogar(4);
            //9 Quadro
            Jogo.Jogar(10);
            //Quadro com até três jogadas.
            Jogo.Jogar(2);
            Jogo.Jogar(8);
            Jogo.Jogar(6);

            //Preparação
            int pontuacao = Jogo.ObterPontuacao();

            //Validação
            Assert.AreEqual(pontuacao, 133);
        }
Esempio n. 12
0
 public void TestarConstrutor()
 {
     var validacoesDeBonus = new JogoBonusValidacoes();
     var calculosDeBonus   = new JogoBonusCalculos();
     var Jogo = new JogoDeBoliche(validacoesDeBonus, calculosDeBonus);
 }
 public JogoDeBolicheTeste()
 {
     this.jogoDeBoliche = new JogoDeBoliche();
 }