This is an automated email from the ASF dual-hosted git repository. aldettinger pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push: new 2b4c98f CAMEL-11807: Migrated camel-couchdb tests to JUnit 5 2b4c98f is described below commit 2b4c98f0adc4e8146654d22162bc98e7b843eff1 Author: aldettinger <aldettin...@gmail.com> AuthorDate: Wed Apr 8 14:26:47 2020 +0200 CAMEL-11807: Migrated camel-couchdb tests to JUnit 5 --- components/camel-couchdb/pom.xml | 7 +- .../couchdb/CouchDbChangesetTrackerTest.java | 24 +++---- .../component/couchdb/CouchDbComponentTest.java | 13 ++-- .../CouchDbConsumerDeletesIntegrationTest.java | 10 +-- .../couchdb/CouchDbConsumerIntegrationTest.java | 12 ++-- .../CouchDbConsumerUpdatesIntegrationTest.java | 10 +-- .../component/couchdb/CouchDbEndpointTest.java | 74 ++++++++++++---------- .../component/couchdb/CouchDbProducerTest.java | 45 +++++++------ 8 files changed, 109 insertions(+), 86 deletions(-) diff --git a/components/camel-couchdb/pom.xml b/components/camel-couchdb/pom.xml index 68764ff..8de178a 100644 --- a/components/camel-couchdb/pom.xml +++ b/components/camel-couchdb/pom.xml @@ -52,7 +52,12 @@ </dependency> <dependency> <groupId>org.apache.camel</groupId> - <artifactId>camel-test</artifactId> + <artifactId>camel-test-junit5</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.mockito</groupId> + <artifactId>mockito-junit-jupiter</artifactId> <scope>test</scope> </dependency> <dependency> diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbChangesetTrackerTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbChangesetTrackerTest.java index 21cb942..9294226 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbChangesetTrackerTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbChangesetTrackerTest.java @@ -18,23 +18,23 @@ package org.apache.camel.component.couchdb; import org.apache.camel.Exchange; import org.apache.camel.Processor; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.lightcouch.Changes; import org.lightcouch.ChangesResult.Row; import org.lightcouch.CouchDbContext; import org.lightcouch.CouchDbInfo; import org.mockito.ArgumentMatchers; import org.mockito.Mock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class CouchDbChangesetTrackerTest { @Mock @@ -66,7 +66,7 @@ public class CouchDbChangesetTrackerTest { private CouchDbChangesetTracker tracker; - @Before + @BeforeEach public void before() { when(endpoint.isUpdates()).thenReturn(true); @@ -82,18 +82,18 @@ public class CouchDbChangesetTrackerTest { when(changes.style(ArgumentMatchers.isNull())).thenReturn(changes); when(row1.getSeq()).thenReturn("seq1"); - when(row2.getSeq()).thenReturn("seq2"); - when(row3.getSeq()).thenReturn("seq3"); when(row1.getId()).thenReturn("id1"); - when(row2.getId()).thenReturn("id2"); - when(row3.getId()).thenReturn("id3"); tracker = new CouchDbChangesetTracker(endpoint, consumer, client); } @Test - public void testExchangeCreatedWithCorrectProperties() throws Exception { + void testExchangeCreatedWithCorrectProperties() throws Exception { + when(row2.getSeq()).thenReturn("seq2"); + when(row3.getSeq()).thenReturn("seq3"); + when(row2.getId()).thenReturn("id2"); + when(row3.getId()).thenReturn("id3"); when(changes.hasNext()).thenReturn(true, true, true, false); when(changes.next()).thenReturn(row1, row2, row3); when(endpoint.createExchange("seq1", "id1", null, false)).thenReturn(exchange1); @@ -112,7 +112,7 @@ public class CouchDbChangesetTrackerTest { } @Test - public void testProcessorInvoked() throws Exception { + void testProcessorInvoked() throws Exception { when(changes.hasNext()).thenReturn(true, false); when(changes.next()).thenReturn(row1); when(consumer.getProcessor()).thenReturn(processor); diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbComponentTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbComponentTest.java index aca029b..c6e918c 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbComponentTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbComponentTest.java @@ -19,8 +19,13 @@ package org.apache.camel.component.couchdb; import java.util.HashMap; import java.util.Map; -import org.apache.camel.test.junit4.CamelTestSupport; -import org.junit.Test; +import org.apache.camel.test.junit5.CamelTestSupport; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; public class CouchDbComponentTest extends CamelTestSupport { @@ -30,7 +35,7 @@ public class CouchDbComponentTest extends CamelTestSupport { } @Test - public void testEndpointCreated() throws Exception { + void testEndpointCreated() throws Exception { Map<String, Object> params = new HashMap<>(); String uri = "couchdb:http://localhost:5984/db"; @@ -41,7 +46,7 @@ public class CouchDbComponentTest extends CamelTestSupport { } @Test - public void testPropertiesSet() throws Exception { + void testPropertiesSet() throws Exception { Map<String, Object> params = new HashMap<>(); params.put("createDatabase", true); params.put("username", "coldplay"); diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerDeletesIntegrationTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerDeletesIntegrationTest.java index e91a6be..31d39de 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerDeletesIntegrationTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerDeletesIntegrationTest.java @@ -24,9 +24,9 @@ import org.apache.camel.Endpoint; import org.apache.camel.EndpointInject; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; -import org.apache.camel.test.junit4.CamelTestSupport; -import org.junit.Before; -import org.junit.Test; +import org.apache.camel.test.junit5.CamelTestSupport; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.lightcouch.CouchDbClient; import org.lightcouch.Response; @@ -40,7 +40,7 @@ public class CouchDbConsumerDeletesIntegrationTest extends CamelTestSupport { private CouchDbClient client; - @Before + @BeforeEach public void before() { client = new CouchDbClient("camelcouchdb", true, "http", "localhost", 5984, null, null); } @@ -56,7 +56,7 @@ public class CouchDbConsumerDeletesIntegrationTest extends CamelTestSupport { } @Test - public void testDeletesOnly() throws InterruptedException { + void testDeletesOnly() throws InterruptedException { to.expectedHeaderReceived(CouchDbConstants.HEADER_METHOD, "DELETE"); to.expectedMessageCount(1); diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerIntegrationTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerIntegrationTest.java index 491e155..83f9cc7 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerIntegrationTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerIntegrationTest.java @@ -24,9 +24,9 @@ import org.apache.camel.Endpoint; import org.apache.camel.EndpointInject; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; -import org.apache.camel.test.junit4.CamelTestSupport; -import org.junit.Before; -import org.junit.Test; +import org.apache.camel.test.junit5.CamelTestSupport; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.lightcouch.CouchDbClient; import org.lightcouch.Response; @@ -40,7 +40,7 @@ public class CouchDbConsumerIntegrationTest extends CamelTestSupport { private CouchDbClient client; - @Before + @BeforeEach public void before() { client = new CouchDbClient("camelcouchdb", true, "http", "localhost", 5984, null, null); } @@ -57,7 +57,7 @@ public class CouchDbConsumerIntegrationTest extends CamelTestSupport { } @Test - public void testInsertsOnly() throws InterruptedException { + void testInsertsOnly() throws InterruptedException { to.expectedHeaderReceived(CouchDbConstants.HEADER_METHOD, "UPDATE"); to.expectedMessageCount(1); @@ -69,7 +69,7 @@ public class CouchDbConsumerIntegrationTest extends CamelTestSupport { } @Test - public void testMessages() throws InterruptedException { + void testMessages() throws InterruptedException { final int messageCount = 100; to.expectedMessageCount(messageCount); diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerUpdatesIntegrationTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerUpdatesIntegrationTest.java index d4edaaa..608ce2c 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerUpdatesIntegrationTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbConsumerUpdatesIntegrationTest.java @@ -24,9 +24,9 @@ import org.apache.camel.Endpoint; import org.apache.camel.EndpointInject; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; -import org.apache.camel.test.junit4.CamelTestSupport; -import org.junit.Before; -import org.junit.Test; +import org.apache.camel.test.junit5.CamelTestSupport; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.lightcouch.CouchDbClient; import org.lightcouch.Response; @@ -40,7 +40,7 @@ public class CouchDbConsumerUpdatesIntegrationTest extends CamelTestSupport { private CouchDbClient client; - @Before + @BeforeEach public void before() { client = new CouchDbClient("camelcouchdb", true, "http", "localhost", 5984, null, null); } @@ -56,7 +56,7 @@ public class CouchDbConsumerUpdatesIntegrationTest extends CamelTestSupport { } @Test - public void testDeletesOnly() throws InterruptedException { + void testDeletesOnly() throws InterruptedException { to.expectedHeaderReceived(CouchDbConstants.HEADER_METHOD, "UPDATE"); to.expectedMessageCount(1); diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbEndpointTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbEndpointTest.java index 825c4eb..a2fd73b 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbEndpointTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbEndpointTest.java @@ -21,57 +21,67 @@ import java.util.UUID; import com.google.gson.JsonObject; import org.apache.camel.Exchange; import org.apache.camel.impl.DefaultCamelContext; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; public class CouchDbEndpointTest { @Test - public void testCreateCouchExchangeHeadersAreSet() throws Exception { - CouchDbEndpoint endpoint = new CouchDbEndpoint("couchdb:http://localhost/db", "http://localhost/db", new CouchDbComponent(new DefaultCamelContext())); + void testCreateCouchExchangeHeadersAreSet() throws Exception { + try (CouchDbEndpoint endpoint = new CouchDbEndpoint("couchdb:http://localhost/db", "http://localhost/db", new CouchDbComponent(new DefaultCamelContext()))) { - String id = UUID.randomUUID().toString(); - String rev = UUID.randomUUID().toString(); - String seq = "seq123"; + String id = UUID.randomUUID().toString(); + String rev = UUID.randomUUID().toString(); + String seq = "seq123"; - JsonObject doc = new JsonObject(); - doc.addProperty("_id", id); - doc.addProperty("_rev", rev); + JsonObject doc = new JsonObject(); + doc.addProperty("_id", id); + doc.addProperty("_rev", rev); - Exchange exchange = endpoint.createExchange(seq, id, doc, false); - assertEquals(id, exchange.getIn().getHeader(CouchDbConstants.HEADER_DOC_ID)); - assertEquals(rev, exchange.getIn().getHeader(CouchDbConstants.HEADER_DOC_REV)); - assertEquals(seq, exchange.getIn().getHeader(CouchDbConstants.HEADER_SEQ)); - assertEquals("UPDATE", exchange.getIn().getHeader(CouchDbConstants.HEADER_METHOD)); - assertEquals("db", exchange.getIn().getHeader(CouchDbConstants.HEADER_DATABASE)); + Exchange exchange = endpoint.createExchange(seq, id, doc, false); + assertEquals(id, exchange.getIn().getHeader(CouchDbConstants.HEADER_DOC_ID)); + assertEquals(rev, exchange.getIn().getHeader(CouchDbConstants.HEADER_DOC_REV)); + assertEquals(seq, exchange.getIn().getHeader(CouchDbConstants.HEADER_SEQ)); + assertEquals("UPDATE", exchange.getIn().getHeader(CouchDbConstants.HEADER_METHOD)); + assertEquals("db", exchange.getIn().getHeader(CouchDbConstants.HEADER_DATABASE)); + } } @Test - public void assertSingleton() throws Exception { - CouchDbEndpoint endpoint = new CouchDbEndpoint("couchdb:http://localhost/db", "http://localhost/db", new CouchDbComponent()); - assertTrue(endpoint.isSingleton()); + void assertSingleton() throws Exception { + try (CouchDbEndpoint endpoint = new CouchDbEndpoint("couchdb:http://localhost/db", "http://localhost/db", new CouchDbComponent())) { + assertTrue(endpoint.isSingleton()); + } } - @Test(expected = IllegalArgumentException.class) - public void testDbRequired() throws Exception { - new CouchDbEndpoint("couchdb:http://localhost:80", "http://localhost:80", new CouchDbComponent()); + @Test + void testDbRequired() { + assertThrows(IllegalArgumentException.class, () -> { + new CouchDbEndpoint("couchdb:http://localhost:80", "http://localhost:80", new CouchDbComponent()); + }); } @Test - public void testDefaultPortIsSet() throws Exception { - CouchDbEndpoint endpoint = new CouchDbEndpoint("couchdb:http://localhost/db", "http://localhost/db", new CouchDbComponent()); - assertEquals(CouchDbEndpoint.DEFAULT_PORT, endpoint.getPort()); + void testDefaultPortIsSet() throws Exception { + try (CouchDbEndpoint endpoint = new CouchDbEndpoint("couchdb:http://localhost/db", "http://localhost/db", new CouchDbComponent())) { + assertEquals(CouchDbEndpoint.DEFAULT_PORT, endpoint.getPort()); + } } - @Test(expected = IllegalArgumentException.class) - public void testHostnameRequired() throws Exception { - new CouchDbEndpoint("couchdb:http://:80/db", "http://:80/db", new CouchDbComponent()); + @Test + void testHostnameRequired() { + assertThrows(IllegalArgumentException.class, () -> { + new CouchDbEndpoint("couchdb:http://:80/db", "http://:80/db", new CouchDbComponent()); + }); } - @Test(expected = IllegalArgumentException.class) - public void testSchemeRequired() throws Exception { - new CouchDbEndpoint("couchdb:localhost:80/db", "localhost:80/db", new CouchDbComponent()); + @Test + void testSchemeRequired() { + assertThrows(IllegalArgumentException.class, () -> { + new CouchDbEndpoint("couchdb:localhost:80/db", "localhost:80/db", new CouchDbComponent()); + }); } } diff --git a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbProducerTest.java b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbProducerTest.java index 390e7c8dc..6b193ee 100644 --- a/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbProducerTest.java +++ b/components/camel-couchdb/src/test/java/org/apache/camel/component/couchdb/CouchDbProducerTest.java @@ -23,21 +23,22 @@ import com.google.gson.JsonObject; import org.apache.camel.Exchange; import org.apache.camel.InvalidPayloadException; import org.apache.camel.Message; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.lightcouch.Response; import org.mockito.Mock; import org.mockito.invocation.InvocationOnMock; -import org.mockito.junit.MockitoJUnitRunner; +import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.stubbing.Answer; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; -@RunWith(MockitoJUnitRunner.class) +@ExtendWith(MockitoExtension.class) public class CouchDbProducerTest { @Mock @@ -57,20 +58,22 @@ public class CouchDbProducerTest { private CouchDbProducer producer; - @Before + @BeforeEach public void before() { producer = new CouchDbProducer(endpoint, client); when(exchange.getIn()).thenReturn(msg); } - @Test(expected = InvalidPayloadException.class) - public void testBodyMandatory() throws Exception { + @Test + void testBodyMandatory() throws Exception { when(msg.getMandatoryBody()).thenThrow(InvalidPayloadException.class); - producer.process(exchange); + assertThrows(InvalidPayloadException.class, () -> { + producer.process(exchange); + }); } @Test - public void testDocumentHeadersAreSet() throws Exception { + void testDocumentHeadersAreSet() throws Exception { String id = UUID.randomUUID().toString(); String rev = UUID.randomUUID().toString(); @@ -88,15 +91,16 @@ public class CouchDbProducerTest { verify(msg).setHeader(CouchDbConstants.HEADER_DOC_REV, rev); } - @Test(expected = InvalidPayloadException.class) - public void testNullSaveResponseThrowsError() throws Exception { + @Test + void testNullSaveResponseThrowsError() throws Exception { when(exchange.getIn().getMandatoryBody()).thenThrow(InvalidPayloadException.class); - when(producer.getBodyAsJsonElement(exchange)).thenThrow(InvalidPayloadException.class); - producer.process(exchange); + assertThrows(InvalidPayloadException.class, () -> { + producer.process(exchange); + }); } - + @Test - public void testDeleteResponse() throws Exception { + void testDeleteResponse() throws Exception { String id = UUID.randomUUID().toString(); String rev = UUID.randomUUID().toString(); @@ -116,7 +120,7 @@ public class CouchDbProducerTest { } @Test - public void testGetResponse() throws Exception { + void testGetResponse() throws Exception { String id = UUID.randomUUID().toString(); JsonObject doc = new JsonObject(); @@ -132,14 +136,13 @@ public class CouchDbProducerTest { } @Test - public void testStringBodyIsConvertedToJsonTree() throws Exception { + void testStringBodyIsConvertedToJsonTree() throws Exception { when(msg.getMandatoryBody()).thenReturn("{ \"name\" : \"coldplay\" }"); when(client.save(any())).thenAnswer(new Answer<Response>() { @Override public Response answer(InvocationOnMock invocation) throws Throwable { - assertTrue(invocation.getArguments()[0].getClass() + " but wanted " + JsonElement.class, - invocation.getArguments()[0] instanceof JsonElement); + assertTrue(invocation.getArguments()[0] instanceof JsonElement, invocation.getArguments()[0].getClass() + " but wanted " + JsonElement.class); return new Response(); } });