Exemple #1
0
        public void Players_must_alternate_turns()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tac, 0, 0);
            game.Place(Player.Tac, 0, 1);
        }
Exemple #2
0
        public void Field_is_taken_when_tic_has_been_placed()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tac, 0, 0);
            game.Place(Player.Tic, 0, 0);
        }
Exemple #3
0
        public void Alternate_players_placing_a_row_does_not_complete_the_game()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tic, 0, 0);
            game.IsComplete.Should().BeFalse();
            game.Place(Player.Tac, 1, 0);
            game.IsComplete.Should().BeFalse();
            game.Place(Player.Tic, 2, 0);
            game.IsComplete.Should().BeFalse();
        }
Exemple #4
0
        public void Placing_in_diagonal_completes_the_game()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tic, 0, 0);
            game.Place(Player.Tac, 0, 1);
            game.IsComplete.Should().BeFalse();
            game.Place(Player.Tic, 1, 1);
            game.Place(Player.Tac, 0, 2);
            game.IsComplete.Should().BeFalse();
            game.Place(Player.Tic, 2, 2);
            game.IsComplete.Should().BeTrue();
        }
Exemple #5
0
        public void When_a_player_places_a_column_the_game_is_complete()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tic, 0, 0);
            game.IsComplete.Should().BeFalse();
            game.Place(Player.Tac, 1, 0);
            game.Place(Player.Tic, 0, 1);
            game.IsComplete.Should().BeFalse();
            game.Place(Player.Tac, 2, 0);
            game.Place(Player.Tic, 0, 2);
            game.IsComplete.Should().BeTrue();
        }
Exemple #6
0
        public void A_single_placement_does_not_complete_the_game()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tic, 0, 0);

            game.IsComplete.Should().BeFalse();
        }
Exemple #7
0
        public void When_all_fields_are_taken_game_is_over()
        {
            var game       = new TicTacToeGame();
            var placements = from x in Enumerable.Range(0, 3)
                             from y in Enumerable.Range(0, 3)
                             select new { x, y };

            var p = Player.Tic;

            foreach (var placement in placements)
            {
                game.Place(p, placement.x, placement.y);
                p = (p == Player.Tic) ? Player.Tac : Player.Tic;
            }

            game.IsComplete.Should().BeTrue();
        }
Exemple #8
0
        public void Placing_to_the_right_of_board_is_stupid()
        {
            var game = new TicTacToeGame();

            game.Place(Player.Tic, 3, 0);
        }