|
3 | 3 |
|
4 | 4 | import aiohttp
|
5 | 5 | import pytest
|
| 6 | +from multidict import CIMultiDict, CIMultiDictProxy |
| 7 | +from yarl import URL |
6 | 8 |
|
7 | 9 | from galaxy.api.errors import (
|
8 | 10 | AccessDenied, AuthenticationRequired, BackendTimeout, BackendNotAvailable, BackendError, NetworkError,
|
9 | 11 | TooManyRequests, UnknownBackendResponse, UnknownError
|
10 | 12 | )
|
11 | 13 | from galaxy.http import handle_exception
|
12 | 14 |
|
13 |
| -request_info = aiohttp.RequestInfo("http://o.pl", "GET", {}) |
| 15 | +request_info = aiohttp.RequestInfo(URL("http://o.pl"), "GET", CIMultiDictProxy(CIMultiDict())) |
14 | 16 |
|
15 | 17 | @pytest.mark.parametrize(
|
16 | 18 | "aiohttp_exception,expected_exception_type",
|
17 | 19 | [
|
18 | 20 | (asyncio.TimeoutError(), BackendTimeout),
|
19 | 21 | (aiohttp.ServerDisconnectedError(), BackendNotAvailable),
|
20 | 22 | (aiohttp.ClientConnectionError(), NetworkError),
|
21 |
| - (aiohttp.ContentTypeError(request_info, []), UnknownBackendResponse), |
22 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.UNAUTHORIZED), AuthenticationRequired), |
23 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.FORBIDDEN), AccessDenied), |
24 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.SERVICE_UNAVAILABLE), BackendNotAvailable), |
25 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.TOO_MANY_REQUESTS), TooManyRequests), |
26 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.INTERNAL_SERVER_ERROR), BackendError), |
27 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.NOT_IMPLEMENTED), BackendError), |
28 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.BAD_REQUEST), UnknownError), |
29 |
| - (aiohttp.ClientResponseError(request_info, [], status=HTTPStatus.NOT_FOUND), UnknownError), |
| 23 | + (aiohttp.ContentTypeError(request_info, ()), UnknownBackendResponse), |
| 24 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.UNAUTHORIZED), AuthenticationRequired), |
| 25 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.FORBIDDEN), AccessDenied), |
| 26 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.SERVICE_UNAVAILABLE), BackendNotAvailable), |
| 27 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.TOO_MANY_REQUESTS), TooManyRequests), |
| 28 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.INTERNAL_SERVER_ERROR), BackendError), |
| 29 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.NOT_IMPLEMENTED), BackendError), |
| 30 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.BAD_REQUEST), UnknownError), |
| 31 | + (aiohttp.ClientResponseError(request_info, (), status=HTTPStatus.NOT_FOUND), UnknownError), |
30 | 32 | (aiohttp.ClientError(), UnknownError)
|
31 | 33 | ]
|
32 | 34 | )
|
|
0 commit comments