private void assertNoUserDatasets(NamespaceId namespace) throws Exception { DatasetClient datasetClient = getDatasetClient(); List<DatasetSpecificationSummary> datasets = datasetClient.list(namespace); Iterable<DatasetSpecificationSummary> userDatasets = Iterables.filter( datasets, new Predicate<DatasetSpecificationSummary>() { @Override public boolean apply(DatasetSpecificationSummary input) { return isUserDataset(input); } }); Iterable<String> userDatasetNames = Iterables.transform( userDatasets, new Function<DatasetSpecificationSummary, String>() { @Override public String apply(DatasetSpecificationSummary input) { return input.getName(); } }); Assert.assertFalse("Must have no user datasets, but found the following user datasets: " + Joiner.on(", ").join(userDatasetNames), userDatasets.iterator().hasNext()); }
private void doClear(NamespaceId namespace, boolean deleteNamespace) throws Exception { // stop all programs in the namespace getProgramClient().stopAll(namespace); if (deleteNamespace) { getNamespaceClient().delete(namespace); return; } // delete all apps in the namespace for (ApplicationRecord app : getApplicationClient().list(namespace)) { getApplicationClient().delete(namespace.app(app.getName(), app.getAppVersion())); } // delete all dataset instances for (DatasetSpecificationSummary datasetSpecSummary : getDatasetClient().list(namespace)) { getDatasetClient().delete(namespace.dataset(datasetSpecSummary.getName())); } ArtifactClient artifactClient = new ArtifactClient(getClientConfig(), getRestClient()); for (ArtifactSummary artifactSummary : artifactClient.list(namespace, ArtifactScope.USER)) { artifactClient.delete(namespace.artifact(artifactSummary.getName(), artifactSummary.getVersion())); } assertIsClear(namespace); }