doctestprinter.doctest_print

doctestprinter.doctest_print(anything_to_print: Any, max_line_width: Optional[int] = 0, indent: Optional[str] = None)

The general printing method for doctests.

Notes

The argument max_line_width will break lines a whitespaces. If the single text exceeds the maximum linewidth it will not be broken within this implementation.

Parameters
  • anything_to_print (Any) – Anything which will be converted into a string and postprocessed, with default methods.

  • max_line_width (Optional[int]) – Sets the maximum linewidth of the print.

  • indent (str) – Additional indentation added to the docstring.

Examples

>>> test_text = (
...     "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed"
...     " do eiusmod tempor      incididunt ut labore et dolore magna"
...     " aliqua. Ut enim ad  minim veniam, quis nostrud exercitation"
...     " ullamco laboris  nisi ut  aliquip  ex ea commodo consequat."
... )
>>> doctest_print(test_text[:84])
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
>>> doctest_print(test_text, max_line_width=60)
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed
do eiusmod tempor      incididunt ut labore et dolore magna aliqua.
Ut enim ad  minim veniam, quis nostrud exercitation ullamco laboris
nisi ut  aliquip  ex ea commodo consequat.
>>> doctest_print(test_text, max_line_width=60, indent="    ")
    Lorem ipsum dolor sit amet, consectetur adipiscing elit,
    sed do eiusmod tempor      incididunt ut labore et dolore
    magna aliqua. Ut enim ad  minim veniam, quis nostrud exercitation
    ullamco laboris  nisi ut  aliquip  ex ea commodo consequat.
>>> small_list = list(iter("abcdefghij"))
>>> doctest_print(small_list)
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
>>> doctest_print(small_list, max_line_width=60)
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']