]>
Commit | Line | Data |
---|---|---|
fcd6a76a | 1 | import functools |
2 | import inspect | |
3 | ||
4 | import pytest | |
5 | ||
6 | from yt_dlp.networking import RequestHandler | |
7 | from yt_dlp.networking.common import _REQUEST_HANDLERS | |
8 | from yt_dlp.utils._utils import _YDLLogger as FakeLogger | |
9 | ||
10 | ||
11 | @pytest.fixture | |
12 | def handler(request): | |
13 | RH_KEY = request.param | |
14 | if inspect.isclass(RH_KEY) and issubclass(RH_KEY, RequestHandler): | |
15 | handler = RH_KEY | |
16 | elif RH_KEY in _REQUEST_HANDLERS: | |
17 | handler = _REQUEST_HANDLERS[RH_KEY] | |
18 | else: | |
19 | pytest.skip(f'{RH_KEY} request handler is not available') | |
20 | ||
21 | return functools.partial(handler, logger=FakeLogger) |