Skip to content
This repository was archived by the owner on May 8, 2026. It is now read-only.

Commit d145048

Browse files
committed
improve exception message
1 parent 69bdb15 commit d145048

2 files changed

Lines changed: 34 additions & 2 deletions

File tree

google-cloud-bigtable/src/main/java/com/google/cloud/bigtable/admin/v2/BigtableTableAdminClientV2.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,8 @@ private UnaryCallable<ConsistencyRequest, Void> getAwaitConsistencyCallable() {
324324
}
325325
throw new IllegalStateException(
326326
"AwaitConsistencyCallable not initialized. BigtableTableAdminClientV2 must be "
327-
+ "initialized via settings to use this functionality.");
327+
+ "initialized via BigtableTableAdminClientV2.create(BaseBigtableTableAdminSettings) "
328+
+ "to use this functionality.");
328329
}
329330

330331
private OperationCallable<Void, Empty, OptimizeRestoredTableMetadata>
@@ -334,6 +335,7 @@ private UnaryCallable<ConsistencyRequest, Void> getAwaitConsistencyCallable() {
334335
}
335336
throw new IllegalStateException(
336337
"OptimizeRestoredTableCallable not initialized. BigtableTableAdminClientV2 must be "
337-
+ "initialized via settings to use this functionality.");
338+
+ "initialized via BigtableTableAdminClientV2.create(BaseBigtableTableAdminSettings) "
339+
+ "to use this functionality.");
338340
}
339341
}

google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/admin/v2/BigtableTableAdminClientV2Test.java

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,4 +152,34 @@ public void testCreateClientWithSettings() throws Exception {
152152
assertThat(settingsClient.getStub()).isNotInstanceOf(EnhancedBigtableTableAdminStub.class);
153153
}
154154
}
155+
156+
@Test
157+
public void testAwaitConsistency_ThrowsWhenNotInitialized() {
158+
BigtableTableAdminClientV2 uninitializedClient = BigtableTableAdminClientV2.create(mockStub);
159+
160+
try {
161+
uninitializedClient.waitForConsistency(TABLE_NAME, "token");
162+
org.junit.Assert.fail("Expected IllegalStateException");
163+
} catch (IllegalStateException e) {
164+
assertThat(e.getMessage())
165+
.contains("BigtableTableAdminClientV2.create(BaseBigtableTableAdminSettings)");
166+
}
167+
}
168+
169+
@Test
170+
public void testOptimizeRestoredTable_ThrowsWhenNotInitialized() {
171+
BigtableTableAdminClientV2 uninitializedClient = BigtableTableAdminClientV2.create(mockStub);
172+
173+
OptimizeRestoredTableOperationToken mockToken =
174+
Mockito.mock(OptimizeRestoredTableOperationToken.class);
175+
Mockito.when(mockToken.getOperationName()).thenReturn("op-name");
176+
177+
try {
178+
uninitializedClient.awaitOptimizeRestoredTableAsync(mockToken);
179+
org.junit.Assert.fail("Expected IllegalStateException");
180+
} catch (IllegalStateException e) {
181+
assertThat(e.getMessage())
182+
.contains("BigtableTableAdminClientV2.create(BaseBigtableTableAdminSettings)");
183+
}
184+
}
155185
}

0 commit comments

Comments
 (0)