Пример #1
0
def test_basic_critical():
    reset_unittests()
    x = get_logger()
    x.critical("foo")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "CRITICAL", "foo")
    _test_json("CRITICAL", "foo")
Пример #2
0
def test_basic_error():
    reset_unittests()
    x = get_logger()
    x.error("foo")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "ERROR", "foo")
    _test_json("ERROR", "foo")
Пример #3
0
def test_basic_log():
    reset_unittests()
    x = get_logger()
    x.log(logging.WARNING, "foo")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "WARNING", "foo")
    _test_json("WARNING", "foo")
Пример #4
0
def test_basic_info():
    reset_unittests()
    x = get_logger()
    x.info("foo")
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "foo")
Пример #5
0
def test_logging1():
    reset_unittests()
    x = logging.getLogger("foo.bar")
    x.warning("foo%s", "bar")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "WARNING", "foobar")
    _test_json("WARNING", "foobar")
Пример #6
0
def test_template_info():
    reset_unittests()
    x = get_logger()
    x.info("foo%s", "bar")
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "foobar")
Пример #7
0
def test_empty_call2():
    reset_unittests()
    x = get_logger()
    x.info(None)
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "None")
Пример #8
0
def test_logging4():
    reset_unittests()
    x = logging.getLogger()
    x.info("foo %(u)s", {"u": "bar"})
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "foo bar")
Пример #9
0
def test_basic_debug():
    reset_unittests()
    x = get_logger()
    x.debug("foo")
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    assert UNIT_TESTS_STDOUT == []
Пример #10
0
def test_logger_name():
    reset_unittests()
    x = get_logger("foo.bar")
    x.info("test")
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "test")
    assert "foo.bar" in UNIT_TESTS_STDOUT[0]
Пример #11
0
def test_logging5():
    reset_unittests()
    set_config(standard_logging_redirect=False)
    x = logging.getLogger()
    x.info("foobar")
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    assert UNIT_TESTS_STDOUT == []
Пример #12
0
def test_json_only_keys1():
    reset_unittests()
    set_config(json_only_keys=["extra_context_key1", "extra_context_key2"])
    x = get_logger("foo.bar")
    x = x.bind(k1=1, k2="bar")
    x.info("foo", k1=2, k3=2)
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "foo", "{k1=2 k2=bar k3=2}")
Пример #13
0
def test_bytes():
    reset_unittests()
    x = get_logger()
    x.warning(b"foo", k1=1, k2=b"bar")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "WARNING", "foo", "{k1=1 k2=bar}")
    tmp = _test_json("WARNING", "foo")
    assert tmp['k1'] == 1
    assert tmp['k2'] == 'bar'
Пример #14
0
def test_utf8():
    reset_unittests()
    x = get_logger()
    x.warning(u"fooééé", k1=1, k2=u"barààà")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "WARNING", u"fooééé", u"{k1=1 k2=barààà}")
    tmp = _test_json("WARNING", u"fooééé")
    assert tmp['k1'] == 1
    assert tmp['k2'] == u'barààà'
Пример #15
0
def test_json_only_keys2():
    reset_unittests()
    os.environ["MFLOG_JSON_ONLY_KEYS"] = \
        "extra_context_key1,extra_context_key2"
    x = get_logger("foo.bar")
    x = x.bind(k1=1, k2="bar")
    x.info("foo", k1=2, k3=2)
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(UNIT_TESTS_STDOUT, "INFO", "foo", "{k1=2 k2=bar k3=2}")
Пример #16
0
def test_override_dict():
    reset_unittests()
    add_override("foo2.*", "CRITICAL")
    x = get_logger("foo.bar")
    y = get_logger("foo2.bar")
    x.warning("foo")
    y.warning("foo2")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "WARNING", "foo")
    _test_json("WARNING", "foo")
    add_override("foo.*", None)
Пример #17
0
def test_bind():
    reset_unittests()
    x = get_logger("foo.bar")
    x = x.bind(k1=1)
    x = x.bind(k2='bar')
    x.warning("foo")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "WARNING", "foo", "{k1=1 k2=bar}")
    tmp = _test_json("WARNING", "foo")
    assert tmp['k1'] == 1
    assert tmp['k2'] == 'bar'
Пример #18
0
def test_extra_context2():
    reset_unittests()
    os.environ["MFLOG_EXTRA_CONTEXT_FUNC"] = "mflog.unittests.extra_context"
    x = get_logger("foo.bar")
    x = x.bind(k1=1, k2="bar")
    x.info("foo", k1=2, k3=2)
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(
        UNIT_TESTS_STDOUT, "INFO", "foo",
        "{extra_context_key1=extra_context_value1 "
        "extra_context_key2=extra_context_value2 k1=2 k2=bar k3=2}")
Пример #19
0
def test_extra_context():
    reset_unittests()
    set_config(extra_context_func=extra_context)
    x = get_logger("foo.bar")
    x = x.bind(k1=1, k2="bar")
    x.info("foo", k1=2, k3=2)
    assert UNIT_TESTS_STDERR == []
    assert UNIT_TESTS_JSON == []
    _test_stdxxx(
        UNIT_TESTS_STDOUT, "INFO", "foo",
        "{extra_context_key1=extra_context_value1 "
        "extra_context_key2=extra_context_value2 k1=2 k2=bar k3=2}")
Пример #20
0
def test_basic_exception():
    reset_unittests()
    x = get_logger()
    try:
        1 / 0
    except Exception:
        x.exception("foo")
    assert UNIT_TESTS_STDOUT == []
    _test_stdxxx(UNIT_TESTS_STDERR, "ERROR", "foo")
    tmp = _test_json("ERROR", "foo")
    assert len(tmp['exception']) > 10
    assert tmp['exception_type'] == 'ZeroDivisionError'
    assert tmp['exception_file'] == __file__
Пример #21
0
def test_issue3():
    reset_unittests()
    x = get_logger()
    try:
        1 / 0
    except Exception as e:
        x.exception(e)
    assert UNIT_TESTS_STDOUT == []
    if six.PY2:
        _test_stdxxx(UNIT_TESTS_STDERR, "ERROR",
                     "integer division or modulo by zero")
        tmp = _test_json("ERROR", "integer division or modulo by zero")
    else:
        _test_stdxxx(UNIT_TESTS_STDERR, "ERROR", "division by zero")
        tmp = _test_json("ERROR", "division by zero")
    assert len(tmp['exception']) > 10
    assert tmp['exception_type'] == 'ZeroDivisionError'
    assert tmp['exception_file'] == __file__
Пример #22
0
def test_is_enabled_for():
    reset_unittests()
    x = get_logger("foo.bar")
    assert x.isEnabledFor(40)
    assert x.getEffectiveLevel() == 20
    reset_unittests()