public void Return_Hint_For_Bottom_Left_Coordinate_With_Three_Neighbours()
        {
            var board          = new Board(3);
            var hintCalculator = new HintCalculator(board);
            var coordinate     = new Coordinate(2, 0);

            Assert.Equal(0, hintCalculator.Calculate(coordinate));
        }
        public void Return_Hint_From_Coordinate()
        {
            var board          = new Board(3);
            var hintCalculator = new HintCalculator(board);

            var coordinate = new Coordinate(1, 1);

            board.GetSquare(new Coordinate(0, 0)).IsMine = true;
            board.GetSquare(new Coordinate(1, 0)).IsMine = true;
            board.GetSquare(new Coordinate(2, 0)).IsMine = true;

            Assert.Equal(3, hintCalculator.Calculate(coordinate));
        }
        public void Return_Hint_For_Coordinate_With_Eight_Mine_Neighbours()
        {
            var board          = new Board(3);
            var hintCalculator = new HintCalculator(board);
            var coordinate     = new Coordinate(1, 1);

            board.GetSquare(new Coordinate(0, 0)).IsMine = true;
            board.GetSquare(new Coordinate(1, 0)).IsMine = true;
            board.GetSquare(new Coordinate(2, 0)).IsMine = true;
            board.GetSquare(new Coordinate(0, 1)).IsMine = true;
            board.GetSquare(new Coordinate(0, 2)).IsMine = true;
            board.GetSquare(new Coordinate(1, 2)).IsMine = true;
            board.GetSquare(new Coordinate(2, 1)).IsMine = true;
            board.GetSquare(new Coordinate(2, 2)).IsMine = true;

            Assert.Equal(8, hintCalculator.Calculate(coordinate));
        }