### Question:
JestHttpObjectFactory implements ClientObjectFactory<JestClient, Bulk> { @Override public Collection<String> getServerList() { return new ArrayList<>(serverUris); } protected  JestHttpObjectFactory(Builder builder); @Override Collection<String> getServerList(); @Override JestClient createClient(); @Override Function<Bulk, Boolean> createBatchListener(FailoverPolicy failoverPolicy); @Override Function<Bulk, Boolean> createFailureHandler(FailoverPolicy failover); @Override BatchOperations<Bulk> createBatchOperations(); @Override void execute(IndexTemplate indexTemplate); @Override void addOperation(Operation operation); @PluginBuilderFactory static Builder newBuilder(); @Override void start(); @Override void stop(); @Override boolean isStarted(); @Override boolean isStopped();  }### Answer:
@Test public void configReturnsACopyOfServerUrisList() { Builder builder = createTestObjectFactoryBuilder(); builder.withServerUris("http: ClientObjectFactory<JestClient, Bulk> config = builder.build(); Collection<String> serverUrisList = config.getServerList(); serverUrisList.add("test"); assertNotEquals(serverUrisList, config.getServerList()); }