loggingでの出力はdoctestを妨げない

おお、これでlogging.debugのメッセージはコンソールに表示されて、doctestは影響を受けずに成功する。知らなかった。

追記:おっと、干渉しないように設計してあるのかと思ったがそういうことじゃなくて単純にlogging.debugが標準エラー出力に出ているだけだった>If stream is not specified, sys.stderr is used.

"""
>>> foo()
1
"""
import logging
logging.basicConfig(level=logging.DEBUG)


def foo():
    logging.debug("enter foo")
    print 1
    logging.debug("exit foo")


def _test():
    import doctest
    doctest.testmod()


if __name__ == "__main__":
    _test()