Правильное написание юнит теста

У меня есть консольное приложение, которое в результате компиляции выводит в консоль определенную строку. Для этого приложения я хочу создать несколько юнит-тестов, но столкнулся с проблемой. Как правильно написать юнит-тест, чтобы проверялось, что именно выводит метод Main() в консоль. Вот пример кода

public static void Main()
        {
            Random random = new Random();

            while (true)
            {
                Point ballsNextPosition = new Point(-1, -1);
                int player, n;

                int[,] map = new int[100, 100];

                player = int.Parse(Console.ReadLine());
                n = int.Parse(Console.ReadLine());

                for (int i = 1; i <= n; ++i)
                {
                    for (int j = 1; j <= n; ++j)
                    {
                        map[i, j] = int.Parse(Console.ReadLine());
                    }
                }

                ballsNextPosition = GetNextTurnIfVerticalOpenFour(ballsNextPosition, map, n, player);

                for (int j = 1; j <= n; j++)
                {
                    int comboPointCount = 0;
                    for (int i = 1; i <= n; i++)
                    {
                        if (comboPointCount == 4 && i < 15 && map[i, j] == 0)
                        {
                            ballsNextPosition.X = i;
                            ballsNextPosition.Y = j;
                        }

                        if (map[i, j] == player)
                            comboPointCount++;
                        else
                            comboPointCount = 0;
                    }
                }

                if (ballsNextPosition.X == -1 || ballsNextPosition.Y == -1)
                {
                    do
                    {
                        ballsNextPosition.X = random.Next(4, 11);
                        ballsNextPosition.Y = random.Next(4, 11);
                    } while (map[ballsNextPosition.X, ballsNextPosition.Y] != 0);
                }

                Console.WriteLine("{0}:{1}", ballsNextPosition.X, ballsNextPosition.Y);
            }
        }
    }

Для создания тестов использую nUnit


Ответы (0 шт):