Слишком длинная очередь в doctest - PullRequest
0 голосов
/ 03 апреля 2020

Я пишу в Python класс, который имитирует число c типов. Я хотел бы провести несколько многочисленных тестов, а также не иметь предупреждения от пилавы о пикодистиле.

Вот моя сложность.

Для следующего теста

        Traceback (most recent call last):
            ...
        TypeError: Only RiemannSphere, integers or floats can be added to a RiemannSphere

Я получил предупреждение от pylava, потому что моя строка TypeError: ... слишком длинная.

Кто-нибудь знает, как разрезать ее на две строки, даже если она находится в тесте?

Спасибо,

1 Ответ

0 голосов
/ 03 апреля 2020

Я только что нашел хорошее решение, используя ELLIPSIS:

Первоначальный doctest был:

        >>> 1j / z1
        Traceback (most recent call last):
            ...
        TypeError: Only RiemannSphere, integers or floats can be added to a RiemannSphere

Использование директивы # doctest: + ELLIPSIS, это можно записать в ближайшее время:

        >>> 1j / z1
        ... # doctest: +ELLIPSIS
        Traceback (most recent call last):
            ...
        TypeError: Only a RiemannSphere, ... divided by a RiemannSphere number

Следовательно, теперь легко изменить сообщение в Traceback, чтобы пилава не выдавала предупреждение.

...