diff --git a/core-java-modules/core-java-concurrency-basic-3/src/test/java/com/baeldung/concurrent/completablefuture/threadpool/CompletableFutureThreadPoolUnitTest.java b/core-java-modules/core-java-concurrency-basic-3/src/test/java/com/baeldung/concurrent/completablefuture/threadpool/CompletableFutureThreadPoolUnitTest.java index 4f94f36131..9deadfb906 100644 --- a/core-java-modules/core-java-concurrency-basic-3/src/test/java/com/baeldung/concurrent/completablefuture/threadpool/CompletableFutureThreadPoolUnitTest.java +++ b/core-java-modules/core-java-concurrency-basic-3/src/test/java/com/baeldung/concurrent/completablefuture/threadpool/CompletableFutureThreadPoolUnitTest.java @@ -1,8 +1,10 @@ package com.baeldung.concurrent.completablefuture.threadpool; import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.fail; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; import java.util.concurrent.Executor; import java.util.concurrent.Executors; @@ -11,7 +13,7 @@ import org.junit.jupiter.api.Test; public class CompletableFutureThreadPoolUnitTest { @Test - void whenUsingNonAsync_thenUsesMainThread() { + void whenUsingNonAsync_thenUsesMainThread() throws ExecutionException, InterruptedException { CompletableFuture name = CompletableFuture.supplyAsync(() -> "Baeldung"); CompletableFuture nameLength = name.thenApply(value -> { @@ -19,7 +21,7 @@ public class CompletableFutureThreadPoolUnitTest { return value.length(); }); - assertThat(nameLength).isCompletedWithValue(8); + assertThat(nameLength.get()).isEqualTo(8); } @Test @@ -32,7 +34,11 @@ public class CompletableFutureThreadPoolUnitTest { return value.length(); }); - assertThat(nameLength).isCompletedWithValue(8); + try { + assertThat(nameLength.get()).isEqualTo(8); + } catch (Exception e) { + fail(e.getMessage()); + } }; new Thread(test, "test-thread").start(); @@ -40,7 +46,7 @@ public class CompletableFutureThreadPoolUnitTest { } @Test - void whenUsingAsync_thenUsesCommonPool() { + void whenUsingAsync_thenUsesCommonPool() throws ExecutionException, InterruptedException { CompletableFuture name = CompletableFuture.supplyAsync(() -> "Baeldung"); CompletableFuture nameLength = name.thenApplyAsync(value -> { @@ -48,11 +54,11 @@ public class CompletableFutureThreadPoolUnitTest { return value.length(); }); - assertThat(nameLength).isCompletedWithValue(8); + assertThat(nameLength.get()).isEqualTo(8); } @Test - void whenUsingAsync_thenUsesCustomExecutor() { + void whenUsingAsync_thenUsesCustomExecutor() throws ExecutionException, InterruptedException { Executor testExecutor = Executors.newFixedThreadPool(5); CompletableFuture name = CompletableFuture.supplyAsync(() -> "Baeldung"); @@ -61,11 +67,11 @@ public class CompletableFutureThreadPoolUnitTest { return value.length(); }, testExecutor); - assertThat(nameLength).isCompletedWithValue(8); + assertThat(nameLength.get()).isEqualTo(8); } @Test - void whenOverridingDefaultThreadPool_thenUsesCustomExecutor() { + void whenOverridingDefaultThreadPool_thenUsesCustomExecutor() throws ExecutionException, InterruptedException { CompletableFuture name = CustomCompletableFuture.supplyAsync(() -> "Baeldung"); CompletableFuture nameLength = name.thenApplyAsync(value -> { @@ -73,7 +79,7 @@ public class CompletableFutureThreadPoolUnitTest { return value.length(); }); - assertThat(nameLength).isCompletedWithValue(8); + assertThat(nameLength.get()).isEqualTo(8); } private static void printCurrentThread() {