api_client = <rest_framework.test.APIClient object at 0x7f45deaf8240>
archive_data = <swh.web.tests.conftest._ArchiveData object at 0x7f45deaf82e8>
status_code = 400
url_args = {'target': 'swh:1:dir:a2faa28028657859c16ff506924212b33f0e1307'}
query_params = {'authority': 'foo http://example.org'}
@pytest.mark.parametrize(
"status_code,url_args,query_params",
[
pytest.param(
200,
{"target": _swhid},
{"authority": "forge http://example.org"},
id="minimal working",
),
pytest.param(
200,
{"target": _swhid},
{
"authority": "forge http://example.org",
"after": "2021-06-18T09:31:09",
"limit": 100,
},
id="maximal working",
),
pytest.param(
400,
{"target": _swhid},
{"authority": "foo http://example.org"},
id="invalid authority type",
),
pytest.param(
400,
{"target": _swhid},
{
"authority": "forge http://example.org",
"after": "yesterday",
},
id="invalid 'after' format",
),
pytest.param(
400,
{"target": _swhid},
{
"authority": "forge http://example.org",
"limit": "abc",
},
id="invalid 'limit'",
),
],
)
def test_api_raw_extrinsic_metadata_check_params(
api_client, archive_data, status_code, url_args, query_params
):
url = reverse(
"api-1-raw-extrinsic-metadata-swhid",
url_args=url_args,
query_params=query_params,
)
> check_api_get_responses(api_client, url, status_code=status_code)
.tox/py3/lib/python3.7/site-packages/swh/web/tests/api/views/test_metadata.py:179:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.tox/py3/lib/python3.7/site-packages/swh/web/tests/utils.py:131: in check_api_get_responses
check_http_get_response(api_client, url, status_code, content_type="text/html")
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
client = <rest_framework.test.APIClient object at 0x7f45deaf8240>
url = '/api/1/raw-extrinsic-metadata/swhid/swh:1:dir:a2faa28028657859c16ff506924212b33f0e1307/?authority=foo%20http://example.org'
status_code = 400, content_type = 'text/html', http_origin = None
server_name = None
def check_http_get_response(
client: Client,
url: str,
status_code: int,
content_type: str = "*/*",
http_origin: Optional[str] = None,
server_name: Optional[str] = None,
) -> HttpResponse:
"""Helper function to check HTTP response for a GET request.
Args:
client: Django test client
url: URL to check response
status_code: expected HTTP status code
content_type: expected response content type
http_origin: optional HTTP_ORIGIN header value
Returns:
The HTTP response
"""
actual_response = client.get(
url,
HTTP_ACCEPT=content_type,
HTTP_ORIGIN=http_origin,
SERVER_NAME=server_name if server_name else "testserver",
)
> assert isinstance(actual_response, Response)
E assert False
E + where False = isinstance(<HttpResponse status_code=400, "text/html; charset=utf-8">, Response)
.tox/py3/lib/python3.7/site-packages/swh/web/tests/utils.py:66: AssertionError
TEST RESULT
TEST RESULT
- Run At
- May 25 2022, 4:46 PM