From 5949b575cf0076c92589623ab035ee9be7ef603a Mon Sep 17 00:00:00 2001 From: Arturo Bernal Date: Fri, 6 Feb 2026 16:41:58 +0100 Subject: [PATCH] Simplify Assertions --- .../core5/reactive/TestReactiveDataProducer.java | 2 +- .../core5/reactive/TestReactiveEntityProducer.java | 2 +- .../apache/hc/core5/testing/nio/H2AlpnTest.java | 3 ++- .../hc/core5/testing/nio/H2IntegrationTest.java | 4 ++-- .../hc/core5/testing/nio/Http1IntegrationTest.java | 2 +- .../core5/testing/reactive/ReactiveClientTest.java | 4 ++-- .../org/apache/hc/core5/http/HeaderMatcher.java | 5 +---- .../impl/io/TestDefaultBHttpClientConnection.java | 6 +++--- .../impl/io/TestDefaultBHttpServerConnection.java | 4 ++-- .../hc/core5/http/message/TestNameValuePair.java | 2 +- .../support/classic/TestSharedOutputBuffer.java | 2 +- .../hc/core5/http/protocol/ViaRequestTest.java | 2 +- .../apache/hc/core5/pool/TestStrictConnPool.java | 2 +- .../core5/reactor/TestAbstractIOSessionPool.java | 2 +- .../org/apache/hc/core5/util/TestTimeValue.java | 14 +++++++------- 15 files changed, 27 insertions(+), 29 deletions(-) diff --git a/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveDataProducer.java b/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveDataProducer.java index 0f5e04f39e..4440e51b70 100644 --- a/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveDataProducer.java +++ b/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveDataProducer.java @@ -80,7 +80,7 @@ void testStreamThatEndsWithError() throws Exception { final HttpStreamResetException exception = Assertions.assertThrows(HttpStreamResetException.class, () -> producer.produce(streamChannel)); - Assertions.assertTrue(exception.getCause() instanceof RuntimeException, "Expected published exception to be rethrown"); + Assertions.assertInstanceOf(RuntimeException.class, exception.getCause(), "Expected published exception to be rethrown"); Assertions.assertEquals("", byteChannel.dump(StandardCharsets.US_ASCII)); } } diff --git a/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveEntityProducer.java b/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveEntityProducer.java index fbcf367fdd..a161ea6ee0 100644 --- a/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveEntityProducer.java +++ b/httpcore5-reactive/src/test/java/org/apache/hc/core5/reactive/TestReactiveEntityProducer.java @@ -97,7 +97,7 @@ void testStreamThatEndsWithError() throws Exception { final HttpStreamResetException exception = Assertions.assertThrows(HttpStreamResetException.class, () -> entityProducer.produce(streamChannel)); - Assertions.assertTrue(exception.getCause() instanceof RuntimeException, "Expected published exception to be rethrown"); + Assertions.assertInstanceOf(RuntimeException.class, exception.getCause(), "Expected published exception to be rethrown"); Assertions.assertEquals("", byteChannel.dump(StandardCharsets.US_ASCII)); entityProducer.failed(exception); Assertions.assertEquals(1, entityProducer.available()); diff --git a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2AlpnTest.java b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2AlpnTest.java index cd67c4008c..510605dbd7 100644 --- a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2AlpnTest.java +++ b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2AlpnTest.java @@ -30,6 +30,7 @@ import org.junit.jupiter.api.Assertions; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertInstanceOf; import static org.junit.jupiter.api.Assertions.assertTrue; import java.net.InetAddress; @@ -130,7 +131,7 @@ void testALPN() throws Exception { } catch (final ExecutionException e) { final Throwable cause = e.getCause(); assertFalse(h2Allowed, "h2 negotiation was enabled, but h2 was not negotiated"); - assertTrue(cause instanceof ProtocolNegotiationException); + assertInstanceOf(ProtocolNegotiationException.class, cause); assertEquals("ALPN: missing application protocol", cause.getMessage()); assertTrue(strictALPN, "strict ALPN mode was not enabled, but the client negotiator still threw"); return; diff --git a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2IntegrationTest.java b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2IntegrationTest.java index 71a5c98d67..670f5879c3 100644 --- a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2IntegrationTest.java +++ b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/H2IntegrationTest.java @@ -335,12 +335,12 @@ public void failed(final Exception cause) { final Object result2 = pushResultQueue.poll(); Assertions.assertNotNull(result2); - Assertions.assertTrue(result2 instanceof H2StreamResetException); + Assertions.assertInstanceOf(H2StreamResetException.class, result2); Assertions.assertEquals(H2Error.REFUSED_STREAM.getCode(), ((H2StreamResetException) result2).getCode()); final Object result3 = pushResultQueue.poll(); Assertions.assertNotNull(result3); - Assertions.assertTrue(result3 instanceof H2StreamResetException); + Assertions.assertInstanceOf(H2StreamResetException.class, result3); Assertions.assertEquals(H2Error.REFUSED_STREAM.getCode(), ((H2StreamResetException) result3).getCode()); } diff --git a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/Http1IntegrationTest.java b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/Http1IntegrationTest.java index 65a16d97fb..4ce843a646 100644 --- a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/Http1IntegrationTest.java +++ b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/nio/Http1IntegrationTest.java @@ -863,7 +863,7 @@ public void releaseResources() { final ExecutionException exception = Assertions.assertThrows(ExecutionException.class, () -> future1.get(TIMEOUT.getDuration(), TIMEOUT.getTimeUnit())); final Throwable cause = exception.getCause(); - Assertions.assertTrue(cause instanceof MalformedChunkCodingException); + Assertions.assertInstanceOf(MalformedChunkCodingException.class, cause); Assertions.assertEquals("garbage", entityConsumer.generateContent()); } diff --git a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/reactive/ReactiveClientTest.java b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/reactive/ReactiveClientTest.java index 76fbbd15d5..16b3f09f8d 100644 --- a/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/reactive/ReactiveClientTest.java +++ b/httpcore5-testing/src/test/java/org/apache/hc/core5/testing/reactive/ReactiveClientTest.java @@ -232,9 +232,9 @@ void testRequestTimeout() throws Exception { Assertions.assertTrue(requestPublisherCancellation.await(RESULT_TIMEOUT.getDuration(), RESULT_TIMEOUT.getTimeUnit())); final Throwable cause = exception.getCause(); if (versionPolicy == HttpVersionPolicy.FORCE_HTTP_1) { - Assertions.assertTrue(cause instanceof SocketTimeoutException, "Expected SocketTimeoutException, but got " + cause.getClass().getName()); + Assertions.assertInstanceOf(SocketTimeoutException.class, cause, "Expected SocketTimeoutException, but got " + cause.getClass().getName()); } else if (versionPolicy == HttpVersionPolicy.FORCE_HTTP_2) { - Assertions.assertTrue(cause instanceof HttpStreamResetException, format("Expected RST_STREAM, but %s was thrown", cause.getClass().getName())); + Assertions.assertInstanceOf(HttpStreamResetException.class, cause, format("Expected RST_STREAM, but %s was thrown", cause.getClass().getName())); } else { Assertions.fail("Unknown HttpVersionPolicy: " + versionPolicy); } diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/HeaderMatcher.java b/httpcore5/src/test/java/org/apache/hc/core5/http/HeaderMatcher.java index 37324a2f84..82b9928201 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/http/HeaderMatcher.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/http/HeaderMatcher.java @@ -26,8 +26,6 @@ */ package org.apache.hc.core5.http; -import java.util.Objects; - import org.junit.jupiter.api.Assertions; public final class HeaderMatcher { @@ -39,8 +37,7 @@ public static void assertSame(final Header actual, final String headerName, fina Assertions.assertNotNull(actual, "header should not be null"); Assertions.assertTrue(headerName.equalsIgnoreCase(actual.getName()), "header name mismatch: expected=" + headerName + ", actual=" + actual.getName()); - Assertions.assertTrue(Objects.equals(headerValue, actual.getValue()), - "header value mismatch: expected=" + headerValue + ", actual=" + actual.getValue()); + Assertions.assertEquals(headerValue, actual.getValue(), "header value mismatch: expected=" + headerValue + ", actual=" + actual.getValue()); } public static void assertSame(final Header actual, final Header expected) { diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java b/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java index 256af2b7fd..b59d9f162c 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java @@ -149,7 +149,7 @@ void testReadResponseEntityWithContentLength() throws Exception { Assertions.assertEquals(1, conn.getEndpointDetails().getResponseCount()); final InputStream content = entity.getContent(); Assertions.assertNotNull(content); - Assertions.assertTrue(content instanceof ContentLengthInputStream); + Assertions.assertInstanceOf(ContentLengthInputStream.class, content); } @Test @@ -179,7 +179,7 @@ void testReadResponseEntityChunkCoded() throws Exception { Assertions.assertEquals(1, conn.getEndpointDetails().getResponseCount()); final InputStream content = entity.getContent(); Assertions.assertNotNull(content); - Assertions.assertTrue(content instanceof ChunkedInputStream); + Assertions.assertInstanceOf(ChunkedInputStream.class, content); } @Test @@ -226,7 +226,7 @@ void testReadResponseNoEntity() throws Exception { Assertions.assertNotNull(entity); final InputStream content = entity.getContent(); Assertions.assertNotNull(content); - Assertions.assertTrue(content instanceof IdentityInputStream); + Assertions.assertInstanceOf(IdentityInputStream.class, content); } @Test diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpServerConnection.java b/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpServerConnection.java index c44c8ffce9..429eb65871 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpServerConnection.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpServerConnection.java @@ -125,7 +125,7 @@ void testReadRequestEntityWithContentLength() throws Exception { Assertions.assertEquals(1, conn.getEndpointDetails().getRequestCount()); final InputStream content = entity.getContent(); Assertions.assertNotNull(content); - Assertions.assertTrue(content instanceof ContentLengthInputStream); + Assertions.assertInstanceOf(ContentLengthInputStream.class, content); } @Test @@ -157,7 +157,7 @@ void testReadRequestEntityChunckCoded() throws Exception { Assertions.assertEquals(1, conn.getEndpointDetails().getRequestCount()); final InputStream content = entity.getContent(); Assertions.assertNotNull(content); - Assertions.assertTrue(content instanceof ChunkedInputStream); + Assertions.assertInstanceOf(ChunkedInputStream.class, content); } @Test diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/message/TestNameValuePair.java b/httpcore5/src/test/java/org/apache/hc/core5/http/message/TestNameValuePair.java index 8d05c5396d..0e2194a3f4 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/http/message/TestNameValuePair.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/http/message/TestNameValuePair.java @@ -68,7 +68,7 @@ void testNullNotEqual() { void testObjectNotEqual() { final NameValuePair NameValuePair = new BasicNameValuePair("name", "value"); - Assertions.assertNotEquals(NameValuePair, new Object()); + Assertions.assertNotEquals(new Object(), NameValuePair); } @Test diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/nio/support/classic/TestSharedOutputBuffer.java b/httpcore5/src/test/java/org/apache/hc/core5/http/nio/support/classic/TestSharedOutputBuffer.java index 3a03e14d15..46a9bb59a3 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/http/nio/support/classic/TestSharedOutputBuffer.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/http/nio/support/classic/TestSharedOutputBuffer.java @@ -214,7 +214,7 @@ void testMultithreadingWriteStreamAbort() throws Exception { try { task1.get(TIMEOUT.getDuration(), TIMEOUT.getTimeUnit()); } catch (final ExecutionException ex) { - Assertions.assertTrue(ex.getCause() instanceof InterruptedIOException); + Assertions.assertInstanceOf(InterruptedIOException.class, ex.getCause()); } } diff --git a/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/ViaRequestTest.java b/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/ViaRequestTest.java index 2d31de51aa..5324b12008 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/ViaRequestTest.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/ViaRequestTest.java @@ -111,7 +111,7 @@ void testViaRequestNotCreatedAlreadyAdded() throws Exception { assertEquals(HttpHeaders.VIA, request.getHeader(HttpHeaders.VIA).getName()); assertNotNull(request.getHeader(HttpHeaders.VIA)); - assertEquals(request.getHeader(HttpHeaders.VIA).getValue(), viaValue); + assertEquals(viaValue, request.getHeader(HttpHeaders.VIA).getValue()); } } \ No newline at end of file diff --git a/httpcore5/src/test/java/org/apache/hc/core5/pool/TestStrictConnPool.java b/httpcore5/src/test/java/org/apache/hc/core5/pool/TestStrictConnPool.java index d63c4acaa8..201964c878 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/pool/TestStrictConnPool.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/pool/TestStrictConnPool.java @@ -595,7 +595,7 @@ void testLeaseRequestLockTimeout() throws Exception { final ExecutionException executionException = Assertions.assertThrows(ExecutionException.class, () -> future2.get()); - Assertions.assertTrue(executionException.getCause() instanceof DeadlineTimeoutException); + Assertions.assertInstanceOf(DeadlineTimeoutException.class, executionException.getCause()); holdInternalLock.interrupt(); // Cleanup } diff --git a/httpcore5/src/test/java/org/apache/hc/core5/reactor/TestAbstractIOSessionPool.java b/httpcore5/src/test/java/org/apache/hc/core5/reactor/TestAbstractIOSessionPool.java index ef188cf87b..0dde16c6a2 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/reactor/TestAbstractIOSessionPool.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/reactor/TestAbstractIOSessionPool.java @@ -127,7 +127,7 @@ void testGetSessions() throws Exception { Mockito.verify(impl, Mockito.times(3)).validateSession(ArgumentMatchers.any(), ArgumentMatchers.any()); - Assertions.assertEquals(true, future3.isDone()); + Assertions.assertTrue(future3.isDone()); Assertions.assertSame(ioSession1, future3.get()); } diff --git a/httpcore5/src/test/java/org/apache/hc/core5/util/TestTimeValue.java b/httpcore5/src/test/java/org/apache/hc/core5/util/TestTimeValue.java index 72bd74e93b..e3d71a3f80 100644 --- a/httpcore5/src/test/java/org/apache/hc/core5/util/TestTimeValue.java +++ b/httpcore5/src/test/java/org/apache/hc/core5/util/TestTimeValue.java @@ -321,13 +321,13 @@ void testCompareTo() { final TimeValue tv5 = TimeValue.ofSeconds(60L); final TimeValue tv6 = TimeValue.ofMinutes(1L); - Assertions.assertEquals(true, tv1.compareTo(tv1) == 0); - Assertions.assertEquals(true, tv1.compareTo(tv2) < 0); - Assertions.assertEquals(true, tv1.compareTo(tv3) == 0); - Assertions.assertEquals(true, tv1.compareTo(tv4) == 0); - Assertions.assertEquals(true, tv1.compareTo(tv5) < 0); - Assertions.assertEquals(true, tv6.compareTo(tv5) == 0); - Assertions.assertEquals(true, tv6.compareTo(tv4) > 0); + Assertions.assertTrue(tv1.compareTo(tv1) == 0); + Assertions.assertTrue(tv1.compareTo(tv2) < 0); + Assertions.assertTrue(tv1.compareTo(tv3) == 0); + Assertions.assertTrue(tv1.compareTo(tv4) == 0); + Assertions.assertTrue(tv1.compareTo(tv5) < 0); + Assertions.assertTrue(tv6.compareTo(tv5) == 0); + Assertions.assertTrue(tv6.compareTo(tv4) > 0); Assertions.assertThrows(NullPointerException.class, () -> tv1.compareTo(null)); }