async def METHOD_NAME(
    hacs: HacsBase,
    category: HacsCategory,
    aresponses: ResponsesMockServer,
) -> None:
    """Test repository registration."""
    aresponses.add(
        "api.github.com",
        "/repos/test/test",
        "get",
        aresponses.Response(body=json.dumps(repository_data), headers=response_rate_limit_header),
    )
    aresponses.add(
        "api.github.com",
        "/repos/test/test/releases",
        "get",
        aresponses.Response(body=json.dumps(release_data), headers=response_rate_limit_header),
    )
    aresponses.add(
        "api.github.com",
        "/repos/test/test/git/trees/3",
        "get",
        aresponses.Response(
            body=json.dumps(category_test_treefiles(category)),
            headers=response_rate_limit_header,
        ),
    )
    content = base64.b64encode(json.dumps(integration_manifest).encode("utf-8"))
    aresponses.add(
        "api.github.com",
        "/repos/test/test/contents/custom_components/test/manifest.json",
        "get",
        aresponses.Response(
            body=json.dumps({"content": content.decode("utf-8")}),
            headers=response_rate_limit_header,
        ),
    )
    assert hacs.repositories.get_by_full_name("test/test") is None
    await hacs.async_register_repository("test/test", category, check=True)
    repository = hacs.repositories.get_by_full_name("test/test")
    assert repository is not None
    assert repository.data.category == category
    assert repository.data.full_name == "test/test"