@Override
    public Addresses loadAddresses(ClientConnectionProcessListenerRegistry listenerRunner) throws Exception {
        response = discovery.discoverNodes();
        List<Address> addresses = response.getPrivateMemberAddresses();
        listenerRunner.onPossibleAddressesCollected(addresses);
        return new Addresses(addresses);
    }
@Test
    public void testLoadAddresses_withTpc() throws Exception {
        setUpWithTpc();
        ViridianAddressProvider provider = new ViridianAddressProvider(createDiscovery());
        ClientConnectionProcessListenerRegistry listener = createListenerRunner();
        Addresses addresses = provider.loadAddresses(listener);
        Collection<Address> primaries = addresses.primary();
        Collection<Address> secondaries = addresses.secondary();

        assertThat(primaries).containsExactly(PRIVATE_MEMBER_ADDRESS);
        assertThat(secondaries).isEmpty();
        verify(listener, times(1)).onPossibleAddressesCollected(Collections.singletonList(PRIVATE_MEMBER_ADDRESS));    }