Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/connexion/handlers.py: 65%
31 statements
« prev ^ index » next coverage.py v7.2.2, created at 2023-03-26 06:12 +0000
« prev ^ index » next coverage.py v7.2.2, created at 2023-03-26 06:12 +0000
1"""
2This module defines error handlers, operations that produce proper response problems.
3"""
5import logging
7from .exceptions import ResolverProblem
9logger = logging.getLogger("connexion.handlers")
11RESOLVER_ERROR_ENDPOINT_RANDOM_DIGITS = 6
14class ResolverErrorHandler:
15 """
16 Handler for responding to ResolverError.
17 """
19 def __init__(self, status_code, exception):
20 self.status_code = status_code
21 self.exception = exception
23 @property
24 def function(self):
25 return self.handle
27 def handle(self, *args, **kwargs):
28 raise ResolverProblem(
29 detail=self.exception.args[0],
30 status=self.status_code,
31 )
33 @property
34 def operation_id(self):
35 return "noop"
37 @property
38 def randomize_endpoint(self):
39 return RESOLVER_ERROR_ENDPOINT_RANDOM_DIGITS
41 def get_path_parameter_types(self):
42 return {}
44 @property
45 def uri_parser_class(self):
46 return "dummy"
48 @property
49 def api(self):
50 return "dummy"
52 def get_mimetype(self):
53 return "dummy"
55 async def __call__(self, *args, **kwargs):
56 raise ResolverProblem(
57 detail=self.exception.args[0],
58 status=self.status_code,
59 )