Home / Function/ test_error_handler_http_subclass() — flask Function Reference

test_error_handler_http_subclass() — flask Function Reference

Architecture documentation for the test_error_handler_http_subclass() function in test_user_error_handler.py from the flask codebase.

Entity Profile

Dependency Diagram

graph TD
  4594fa13_c05a_ec00_4611_5b04b1042a7b["test_error_handler_http_subclass()"]
  f3be1606_1a20_1a1b_2703_48b5b295bc8d["test_user_error_handler.py"]
  4594fa13_c05a_ec00_4611_5b04b1042a7b -->|defined in| f3be1606_1a20_1a1b_2703_48b5b295bc8d
  style 4594fa13_c05a_ec00_4611_5b04b1042a7b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

tests/test_user_error_handler.py lines 100–133

def test_error_handler_http_subclass(app):
    class ForbiddenSubclassRegistered(Forbidden):
        pass

    class ForbiddenSubclassUnregistered(Forbidden):
        pass

    @app.errorhandler(403)
    def code_exception_handler(e):
        assert isinstance(e, Forbidden)
        return "forbidden"

    @app.errorhandler(ForbiddenSubclassRegistered)
    def subclass_exception_handler(e):
        assert isinstance(e, ForbiddenSubclassRegistered)
        return "forbidden-registered"

    @app.route("/forbidden")
    def forbidden_test():
        raise Forbidden()

    @app.route("/forbidden-registered")
    def registered_test():
        raise ForbiddenSubclassRegistered()

    @app.route("/forbidden-unregistered")
    def unregistered_test():
        raise ForbiddenSubclassUnregistered()

    c = app.test_client()

    assert c.get("/forbidden").data == b"forbidden"
    assert c.get("/forbidden-unregistered").data == b"forbidden"
    assert c.get("/forbidden-registered").data == b"forbidden-registered"

Subdomains

Frequently Asked Questions

What does test_error_handler_http_subclass() do?
test_error_handler_http_subclass() is a function in the flask codebase, defined in tests/test_user_error_handler.py.
Where is test_error_handler_http_subclass() defined?
test_error_handler_http_subclass() is defined in tests/test_user_error_handler.py at line 100.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free