Esempio n. 1
0
def test_exception_plugin():
    # type: () -> None
    test_logger = ExceptionLoggerTestPlugin()
    proxy = PluginProxy([test_logger])

    try:
        raise RandomException("some string")
    except RandomException:
        proxy.log_exception(None, None, *sys.exc_info())

    assert test_logger.request is None
    assert test_logger.status is None
    assert test_logger.exc_type == RandomException
    assert str(test_logger.exc_value) == "some string"
    assert test_logger.exc_tb is not None

    # Reinitializing test_logger unconfuses mypy, which otherwise thinks that test_logger.request
    # must still be None.  See mypy/issues/4168.
    test_logger = ExceptionLoggerTestPlugin()
    proxy = PluginProxy([test_logger])

    try:
        raise RandomException("with request")
    except RandomException:
        request = HTTPRequest("GET", "/foo")
        proxy.log_exception(request, 200, *sys.exc_info())

    assert test_logger.request is not None
    assert test_logger.request.uri == "/foo"
    assert test_logger.status == 200
    assert test_logger.exc_type == RandomException
    assert str(test_logger.exc_value) == "with request"
    assert test_logger.exc_tb is not None
Esempio n. 2
0
def test_exception_plugin():
    # type: () -> None
    test_logger = ExceptionLoggerTestPlugin()
    proxy = PluginProxy([test_logger])

    try:
        raise RandomException("some string")
    except RandomException:
        proxy.log_exception(None, None, *sys.exc_info())

    assert test_logger.request is None
    assert test_logger.status is None
    assert test_logger.exc_type == RandomException
    assert str(test_logger.exc_value) == "some string"
    assert test_logger.exc_tb is not None

    try:
        raise RandomException("with request")
    except RandomException:
        request = HTTPRequest("GET", "/foo")
        proxy.log_exception(request, 200, *sys.exc_info())

    assert test_logger.request is not None
    assert test_logger.request.uri == "/foo"
    assert test_logger.status == 200
    assert test_logger.exc_type == RandomException
    assert str(test_logger.exc_value) == "with request"
    assert test_logger.exc_tb is not None