I’d like to write a doctest like this:
"""
>>> print a.string()
foo : a
bar : b
date : <I don't care about the date output>
baz : c
"""
Is there any way to do this? I think it would make more sense to switch to unittest, but I’m curious whether it’s possible to specify a range of output that shouldn’t be matched for the test in doctest.
Thanks!
With
doctest.ELLIPSIS, you can use...to mean “match any string here”. You can setdoctestoptions with a doctest directive, to make it active for just one test case: one example in the online docs is:If you want a doctest option to be active throughout, you can pass it as the
optionflags=argument to whatever doctest functions you use, e.g.doctest.testfile. (You can pass multiple option flags there by using the|operator to bit-or them).