Skip to content

Commit 55f586b

Browse files
Waiting for termination in more tests
1 parent fa96c56 commit 55f586b

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/external/http/sender/RequestExecutorServiceTests.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ public void testCallingStartTwice_ThrowsAssertionException() throws InterruptedE
123123
assertThat(exception.getMessage(), is("start() can only be called once"));
124124
}
125125

126-
public void testIsTerminated_AfterStopFromSeparateThread() {
126+
public void testIsTerminated_AfterStopFromSeparateThread() throws InterruptedException {
127127
var waitToShutdown = new CountDownLatch(1);
128128
var waitToReturnFromSend = new CountDownLatch(1);
129129

@@ -154,6 +154,8 @@ public void testIsTerminated_AfterStopFromSeparateThread() {
154154
fail(Strings.format("Executor finished before it was signaled to shutdown: %s", e));
155155
}
156156

157+
service.awaitTermination(TIMEOUT.getSeconds(), TimeUnit.SECONDS);
158+
157159
assertTrue(service.isShutdown());
158160
assertTrue(service.isTerminated());
159161
}
@@ -326,12 +328,14 @@ public void onFailure(Exception e) {
326328
Future<?> executorTermination = submitShutdownRequest(waitToShutdown, waitToReturnFromSend, service);
327329

328330
executorTermination.get(TIMEOUT.millis(), TimeUnit.MILLISECONDS);
331+
service.awaitTermination(TIMEOUT.getSeconds(), TimeUnit.SECONDS);
332+
329333
assertTrue(service.isTerminated());
330334

331335
finishedOnResponse.await(TIMEOUT.getSeconds(), TimeUnit.SECONDS);
332336
}
333337

334-
public void testExecute_NotifiesNonRateLimitedTasksOfShutdown() {
338+
public void testExecute_NotifiesNonRateLimitedTasksOfShutdown() throws InterruptedException {
335339
var service = createRequestExecutorServiceWithMocks();
336340

337341
var requestManager = RequestManagerTests.createMockWithRateLimitingDisabled(mock(RequestSender.class), "id");
@@ -348,10 +352,12 @@ public void testExecute_NotifiesNonRateLimitedTasksOfShutdown() {
348352
is("Failed to send request for inference id [id] because the request executor service has been shutdown")
349353
);
350354
assertTrue(thrownException.isExecutorShutdown());
355+
service.awaitTermination(TIMEOUT.getSeconds(), TimeUnit.SECONDS);
356+
351357
assertTrue(service.isTerminated());
352358
}
353359

354-
public void testExecute_NotifiesRateLimitedTasksOfShutdown() {
360+
public void testExecute_NotifiesRateLimitedTasksOfShutdown() throws InterruptedException {
355361
var service = createRequestExecutorServiceWithMocks();
356362

357363
var requestManager = RequestManagerTests.createMockWithRateLimitingEnabled(mock(RequestSender.class), "id");
@@ -375,6 +381,8 @@ public void testExecute_NotifiesRateLimitedTasksOfShutdown() {
375381
)
376382
);
377383
assertTrue(thrownException.isExecutorShutdown());
384+
service.awaitTermination(TIMEOUT.getSeconds(), TimeUnit.SECONDS);
385+
378386
assertTrue(service.isTerminated());
379387
}
380388

@@ -569,6 +577,8 @@ public void testChangingCapacity_ToZero_SetsQueueCapacityToUnbounded() throws IO
569577
service.start();
570578

571579
executorTermination.get(TIMEOUT.millis(), TimeUnit.MILLISECONDS);
580+
service.awaitTermination(TIMEOUT.getSeconds(), TimeUnit.SECONDS);
581+
572582
assertTrue(service.isTerminated());
573583
assertThat(service.remainingQueueCapacity(requestManager), is(Integer.MAX_VALUE));
574584
}

0 commit comments

Comments
 (0)