### Question:
WSCXMLServiceProvider implements ServiceProvider<String> { @Override public Iterable<Service<String>> getServices() { final Set<String> services = this.listServices(); return new Iterable<Service<String>>() { @Override public Iterator<Service<String>> iterator() { return new Iterator<Service<String>>() { Iterator<String> ids = services.iterator(); @Override public boolean hasNext() { return ids.hasNext(); } @Override public Service<String> next() { return getService(ids.next()); } @Override public void remove() { throw new UnsupportedOperationException(); } }; } }; } WSCXMLServiceProvider(InputStream serviceStream);  WSCXMLServiceProvider(File xmlServices); Service<String> getService(String serviceID); @Override Operation<String> getOperation(String operationID); @Override Iterable<Operation<String>> getOperationsWithInput(String inputInstance); @Override Iterable<Operation<String>> getOperationsWithOutput(String outputInstance); @Override Iterable<Operation<String>> getOperations(); @Override Iterable<Service<String>> getServices(); @Override Set<String> listOperations(); @Override Set<String> listServices(); static final String operationSuffix; }### Answer:
@Test public void testGetServices() throws Exception { assertEquals(158, Sets.newHashSet(provider.getServices()).size()); }