@Test public void testListClustersFailedZone() { // Setup com.google.bigtable.admin.v2.ListClustersRequest expectedRequest = com.google.bigtable.admin.v2.ListClustersRequest.newBuilder() .setParent(INSTANCE_NAME) .build(); com.google.bigtable.admin.v2.ListClustersResponse expectedResponse = com.google.bigtable.admin.v2.ListClustersResponse.newBuilder() .addClusters(com.google.bigtable.admin.v2.Cluster.newBuilder().setName(CLUSTER_NAME)) .addFailedLocations(NameUtil.formatLocationName(PROJECT_ID, "us-east1-c")) .build(); Mockito.when(mockListClustersCallable.futureCall(expectedRequest)) .thenReturn(ApiFutures.immediateFuture(expectedResponse)); // Execute Exception actualError = null; try { adminClient.listClusters(INSTANCE_ID); } catch (Exception e) { actualError = e; } // Verify assertThat(actualError).isInstanceOf(PartialListClustersException.class); assert actualError != null; PartialListClustersException partialListError = (PartialListClustersException) actualError; assertThat(partialListError.getClusters()) .containsExactly(Cluster.fromProto(expectedResponse.getClusters(0))); assertThat(partialListError.getUnavailableZones()).containsExactly("us-east1-c"); }
@Test public void testListClusters() { // Setup com.google.bigtable.admin.v2.ListClustersRequest expectedRequest = com.google.bigtable.admin.v2.ListClustersRequest.newBuilder() .setParent(INSTANCE_NAME) .build(); com.google.bigtable.admin.v2.ListClustersResponse expectedResponse = com.google.bigtable.admin.v2.ListClustersResponse.newBuilder() .addClusters( com.google.bigtable.admin.v2.Cluster.newBuilder().setName(CLUSTER_NAME + "1")) .addClusters( com.google.bigtable.admin.v2.Cluster.newBuilder().setName(CLUSTER_NAME + "2")) .build(); Mockito.when(mockListClustersCallable.futureCall(expectedRequest)) .thenReturn(ApiFutures.immediateFuture(expectedResponse)); // Execute List<Cluster> actualResult = adminClient.listClusters(INSTANCE_ID); // Verify assertThat(actualResult) .containsExactly( Cluster.fromProto(expectedResponse.getClusters(0)), Cluster.fromProto(expectedResponse.getClusters(1))); }