MCPcopy Create free account
hub / github.com/pallets/flask / test_error_handler_http_subclass

Function test_error_handler_http_subclass

tests/test_user_error_handler.py:100–133  ·  view source on GitHub ↗
(app)

Source from the content-addressed store, hash-verified

98
99
100def test_error_handler_http_subclass(app):
101 class ForbiddenSubclassRegistered(Forbidden):
102 pass
103
104 class ForbiddenSubclassUnregistered(Forbidden):
105 pass
106
107 @app.errorhandler(403)
108 def code_exception_handler(e):
109 assert isinstance(e, Forbidden)
110 return "forbidden"
111
112 @app.errorhandler(ForbiddenSubclassRegistered)
113 def subclass_exception_handler(e):
114 assert isinstance(e, ForbiddenSubclassRegistered)
115 return "forbidden-registered"
116
117 @app.route("/forbidden")
118 def forbidden_test():
119 raise Forbidden()
120
121 @app.route("/forbidden-registered")
122 def registered_test():
123 raise ForbiddenSubclassRegistered()
124
125 @app.route("/forbidden-unregistered")
126 def unregistered_test():
127 raise ForbiddenSubclassUnregistered()
128
129 c = app.test_client()
130
131 assert c.get("/forbidden").data == b"forbidden"
132 assert c.get("/forbidden-unregistered").data == b"forbidden"
133 assert c.get("/forbidden-registered").data == b"forbidden-registered"
134
135
136def test_error_handler_blueprint(app):

Callers

nothing calls this directly

Calls 2

test_clientMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected