async def METHOD_NAME(get_daemon: WebSocketServer, bt: BlockTools) -> None:
    ws_server = get_daemon
    config = bt.config
    daemon_port = config["daemon_port"]
    # setup receive service to connect to the daemon
    async with aiohttp.ClientSession() as client:
        async with client.ws_connect(
            f"wss://127.0.0.1:{daemon_port}",
            autoclose=True,
            autoping=True,
            ssl_context=bt.get_daemon_ssl_context(),
            max_msg_size=100 * 1024 * 1024,
        ) as ws:
            test_service_names = ["service1", "service2", "service3"]
            for service_name in test_service_names:
                data = {"service": service_name}
                payload = create_payload("register_service", data, service_name, "daemon")
                await ws.send_str(payload)
                await ws.receive()
            assert sorted(ws_server.connections.keys()) == test_service_names
            for service_name in test_service_names:
                connections = ws_server.connections.get(service_name, set())
                assert len(connections) == 1
        # Check after closing the connection
        for service_name in test_service_names:
            connections = ws_server.connections.get(service_name, set())
            assert connections == set()