test_logging.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:nicfit.py 作者: nicfit 项目源码 文件源码
def test_logLevelArguments():
    p = ArgumentParser(add_log_args=True)

    # Invalids
    for args, Exc in [(["-l"], SystemExit), (["--log-level"], SystemExit),
                      (["-l", "Vision-InTheBlinkOfAnEye"], ValueError),
                      (["-l", "debug:TheOnlyOne"], ValueError),
                     ]:
        with pytest.raises(Exc):
            p.parse_args(args)

    # Level sets on root logger.
    for args, level in [(["-l", "debug"], logging.DEBUG),
                        (["-lerror"], logging.ERROR),
                        (["--log-level", "warning"], logging.WARN),
                        (["--log-level=critical"], logging.CRITICAL),
                        (["--log-level=verbose"], logging.VERBOSE),
                       ]:
        p.parse_args(args)
        logger = getLogger()
        assert logger.getEffectiveLevel() == level

    # Level sets on other logger.
    for args, level, log in [
        (["-l", "Venom:debug"], logging.DEBUG, "Venom"),
        (["-lWatain:eRroR"], logging.ERROR, "Watain"),
        (["--log-level", "l1:WARNING"], logging.WARN, "l1"),
        (["--log-level=nicfit:critical"], logging.CRITICAL, "nicfit"),
        (["--log-level=eyeD3:verbose"], logging.VERBOSE, "eyeD3"),
    ]:
        logger = getLogger(log)
        with patch.object(logger, "setLevel") as mock_log:
            p.parse_args(args)
        mock_log.assert_called_with(level)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号