Python `doctest` с выходами ANSI - PullRequest
0 голосов
/ 09 июля 2019

У меня есть код, для которого у меня есть какой-нибудь тест, например

def foo(x):
    """
    Examples:
        >>> s = '\u001b[0;35mfoo\u001b[0m \u001b[0;36mbar\u001b[0m'
        >>> print(repr(s))
        '\x1b[0;35mfoo\x1b[0m \x1b[0;36mbar\x1b[0m'
        >>> print(s)
        foo bar
    """
    ...

Конечно, в терминале с поддержкой ANSI-экранирования последний print() фактически окрашен.

Однако, если я выполню здесь doctest, я получу провальный тест. Как я мог решить это?

Я надеялся, что у меня есть способ вставить экранирование ANSI или, предпочтительно, директива doctest для их игнорирования, но я не смог найти никакой информации по этому вопросу в документах .

...