]> jfr.im git - yt-dlp.git/blame - test/conftest.py
Release 2024.04.09
[yt-dlp.git] / test / conftest.py
CommitLineData
fcd6a76a 1import functools
2import inspect
3
4import pytest
5
6from yt_dlp.networking import RequestHandler
7from yt_dlp.networking.common import _REQUEST_HANDLERS
8from yt_dlp.utils._utils import _YDLLogger as FakeLogger
9
10
11@pytest.fixture
12def 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)
ccfd70f4 22
23
24def validate_and_send(rh, req):
25 rh.validate(req)
26 return rh.send(req)