Python (3.3.2) doctest では、省略記号 ( ...
) は任意の文字列に一致します。したがって、以下のコードについては
def foo():
"""
>>> foo()
hello ...
"""
print("hello world")
doctest を実行してもエラーは発生しません。しかし
$ python -m doctest foo.py
**********************************************************************
File "./foo.py", line 3, in foo.foo
Failed example:
foo()
Expected:
hello ...
Got:
hello world
**********************************************************************
1 items had failures:
1 of 1 in foo.foo
***Test Failed*** 1 failures.
省略記号を有効にするにはどうすればよいですか? 私が知る限り、デフォルトでは無効になっています。
# doctest: +ELLIPSIS
以下のコードのようにadd で解決できることはわかっていますが、すべてのテストで省略記号を有効にしたいと考えています。
def foo():
"""
>>> foo() # doctest: +ELLIPSIS
hello ...
"""
print("hello world")