Ejemplo n.º 1
0
        public void ShouldNotMarkTheSameStep()
        {
            var game = new TicTacToe();
            game.Mark(1, 1);

            Assert.IsFalse(game.CanMark(1, 1));
            game.Mark(1, 1);
        }
Ejemplo n.º 2
0
        public void ShouldPrintGame()
        {
            var printMessage = MockRepository.GenerateStub<IPrintMessage>();
            var game = new TicTacToe(printMessage);
            game.Mark(1, 1);
            game.Mark(2, 2);
            game.Mark(3, 3);

            game.Print("|");

            printMessage.AssertWasCalled(x => x.Print("X| | \n |O| \n | |X"));


        }
Ejemplo n.º 3
0
        public void ShouldStartNew()
        {
            var game = new TicTacToe();
            Assert.IsTrue(game.IsNew);

            game.Mark(1,1);

            Assert.IsFalse(game.IsNew);

            game.StartNew();

            Assert.IsTrue(game.IsNew);
        }
Ejemplo n.º 4
0
        public void ShouldCheckIsWinner()
        {
            {
                var game = new TicTacToe();
                game.Mark(1, 1); //X
                game.Mark(2, 1); //O
                game.Mark(1, 2); //X
                game.Mark(2, 2); //O
                game.Mark(1, 3); //X

                Assert.IsTrue(game.IsWinner("X"));
            }
            
            {
                var game = new TicTacToe();
                game.Mark(1, 1); //X
                game.Mark(1, 2); //O
                game.Mark(2, 2); //X
                game.Mark(2, 3); //O
                game.Mark(3, 3); //X

                Assert.IsTrue(game.IsWinner("X"));
            }
            
            {
                var game = new TicTacToe();
                game.Mark(1, 1); //X
                game.Mark(1, 2); //O
                game.Mark(2, 3); //X
                game.Mark(2, 2); //O
                game.Mark(3, 3); //X
                game.Mark(3, 2); //O

                Assert.IsTrue(game.IsWinner("O"));
            }
        }
Ejemplo n.º 5
0
        public void ShouldCheckIfTheGameIsOver()
        {
            {
                var game = new TicTacToe();
                game.Mark(1, 1); //X
                game.Mark(1, 2); //O
                game.Mark(2, 2); //X
                game.Mark(2, 3); //O
                game.Mark(3, 3); //X

                Assert.IsTrue(game.IsGameOver());
            }

            {
                var game = new TicTacToe();
                game.Mark(1, 1); //X
                game.Mark(2, 1); //O
                game.Mark(3, 1); //X
                game.Mark(2, 2); //O
                game.Mark(1, 2); //X
                game.Mark(3, 2); //O
                game.Mark(2, 3); //X
                game.Mark(1, 3); //O
                game.Mark(3, 3); //O

                Assert.IsTrue(game.IsGameOver());
                Assert.IsTrue(game.IsGameDraw());
            }
        }
Ejemplo n.º 6
0
 public void Mark_ShouldWitnIn3X3()
 {
     var game = new TicTacToe();
     Assert.IsFalse(game.CanMark(4, 0));
     game.Mark(4, 0);
 }
Ejemplo n.º 7
0
        public void Mark_ShouldNotAllowedWithTheGameIsOver()
        {
            {
                var game = new TicTacToe();
                game.Mark(1, 1); //X
                game.Mark(1, 2); //O
                game.Mark(2, 2); //X
                game.Mark(2, 3); //O
                game.Mark(3, 3); //X
                game.Mark(3, 1); //O

                Assert.IsTrue(game.IsGameOver());
                Assert.IsFalse(game.CanMark(3, 2));
                game.Mark(3, 2);
            }
        }