@Override
    public Iterable<DiscoveryNode> discoverNodes() {
        try {
            List<GcpAddress> gcpAddresses = gcpClient.getAddresses();
            logGcpAddresses(gcpAddresses);

            List<DiscoveryNode> result = new ArrayList<>();
            for (GcpAddress gcpAddress : gcpAddresses) {
                for (int port = portRange.getFromPort(); port <= portRange.getToPort(); port++) {
                    result.add(createDiscoveryNode(gcpAddress, port));
                }
            }

            return result;
        } catch (Exception e) {
            LOGGER.warning("Cannot discover nodes, returning empty list", e);
            return Collections.emptyList();
        }
    }
@Test
    public void discoverNodesEmpty() {
        // given
        given(gcpClient.getAddresses()).willReturn(new ArrayList<>());

        // when
        Iterable<DiscoveryNode> nodes = gcpDiscoveryStrategy.discoverNodes();

        // then
        assertFalse(nodes.iterator().hasNext());
    }