def METHOD_NAME(
    mocker,
    betfair_client,
    instrument_provider,
    instrument,
    venue,
    event_loop,
    msgbus,
    cache,
    clock,
    logger,
) -> BetfairDataClient:
    mocker.patch(
        "nautilus_trader.adapters.betfair.factories.get_cached_betfair_client",
        return_value=betfair_client,
    )
    mocker.patch(
        "nautilus_trader.adapters.betfair.factories.get_cached_betfair_instrument_provider",
        return_value=instrument_provider,
    )
    instrument_provider.add(instrument)
    METHOD_NAME = BetfairLiveDataClientFactory.create(
        loop=event_loop,
        name=venue.value,
        config=BetfairDataClientConfig(
            username="username",
            password="password",
            app_key="app_key",
        ),
        msgbus=msgbus,
        cache=cache,
        clock=clock,
        logger=logger,
    )
    METHOD_NAME._client._headers.update(
        {
            "X-Authentication": "token",
            "X-Application": "product",
        },
    )
    # Patches
    patch(
        "nautilus_trader.adapters.betfair.data.BetfairDataClient._instrument_provider.get_account_currency",
        return_value="GBP",
    )
    patch(
        "nautilus_trader.adapters.betfair.providers.BetfairInstrumentProvider._client.list_navigation",
        return_value=BetfairResponses.navigation_list_navigation(),
    )
    return METHOD_NAME