Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/starlette/middleware/__init__.py: 38%
13 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
1import typing
4class Middleware:
5 def __init__(self, cls: type, **options: typing.Any) -> None:
6 self.cls = cls
7 self.options = options
9 def __iter__(self) -> typing.Iterator:
10 as_tuple = (self.cls, self.options)
11 return iter(as_tuple)
13 def __repr__(self) -> str:
14 class_name = self.__class__.__name__
15 option_strings = [f"{key}={value!r}" for key, value in self.options.items()]
16 args_repr = ", ".join([self.cls.__name__] + option_strings)
17 return f"{class_name}({args_repr})"