Coverage for hookee/plugins/request_body.py: 95.00%
20 statements
« prev ^ index » next coverage.py v7.3.4, created at 2023-12-27 17:55 +0000
« prev ^ index » next coverage.py v7.3.4, created at 2023-12-27 17:55 +0000
1from hookee.pluginmanager import REQUEST_PLUGIN
2from hookee.util import PrintUtil
4__author__ = "Alex Laird"
5__copyright__ = "Copyright 2023, Alex Laird"
6__version__ = "1.2.2"
8plugin_type = REQUEST_PLUGIN
9description = "Print the `request`'s body, if defined, and attempt to identify the body type."
11print_util = None # type: PrintUtil
14def setup(hookee_manager):
15 global print_util
17 print_util = hookee_manager.print_util
20def run(request):
21 if request.is_json:
22 print_util.print_basic("Body Type: JSON", color=print_util.request_color)
23 print_util.print_dict("Body", dict(request.json), color=print_util.request_color)
24 elif request.form and not request.data:
25 print_util.print_basic("Body Type: FORM")
26 print_util.print_dict("Body", dict(request.form), color=print_util.request_color)
27 elif request.data:
28 print_util.print_basic("Body: {}".format(request.data.decode("utf-8")), color=print_util.request_color)
30 return request