You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by al...@apache.org on 2019/11/18 10:26:01 UTC
[camel] 03/03: CAMEL-11807: Migrated camel-mongodb tests to JUnit 5
This is an automated email from the ASF dual-hosted git repository.
aldettinger pushed a commit to branch CAMEL-11807
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 468d7b5d6bb94d942e625d942f4e6cd02a5114a1
Author: aldettinger <al...@gmail.com>
AuthorDate: Sat Nov 16 09:50:37 2019 +0100
CAMEL-11807: Migrated camel-mongodb tests to JUnit 5
---
components/camel-mongodb/pom.xml | 7 +-
.../camel/component/mongodb/MongoDbProducer.java | 24 ++--
.../component/mongodb/AbstractMongoDbTest.java | 21 ++--
.../mongodb/MongoDbAggregateOperationTest.java | 43 ++++----
.../mongodb/MongoDbBigDecimalConverterTest.java | 10 +-
.../mongodb/MongoDbBulkWriteOperationTest.java | 24 ++--
.../mongodb/MongoDbChangeStreamsConsumerTest.java | 4 +-
.../mongodb/MongoDbConnectionBeansTest.java | 16 ++-
.../component/mongodb/MongoDbConversionsTest.java | 28 ++---
.../component/mongodb/MongoDbDynamicityTest.java | 47 ++++----
.../mongodb/MongoDbExceptionHandlingTest.java | 12 +-
.../mongodb/MongoDbFindOperationTest.java | 121 +++++++++++----------
.../mongodb/MongoDbHeaderHandlingTest.java | 38 ++++---
.../camel/component/mongodb/MongoDbIndexTest.java | 71 ++++++------
.../component/mongodb/MongoDbOperationsTest.java | 119 ++++++++++----------
.../component/mongodb/MongoDbOutputTypeTest.java | 33 +++---
.../mongodb/MongoDbReadPreferenceOptionTest.java | 8 +-
.../component/mongodb/MongoDbStopEndpointTest.java | 3 +-
.../mongodb/MongoDbTailableCursorConsumerTest.java | 22 ++--
.../mongodb/meta/MongoDbMetaExtensionTest.java | 34 +++---
.../MongoDbIdempotentRepositoryTest.java | 43 ++++----
.../verifier/MongoDbVerifierExtensionTest.java | 13 +--
22 files changed, 406 insertions(+), 335 deletions(-)
diff --git a/components/camel-mongodb/pom.xml b/components/camel-mongodb/pom.xml
index 7bcccc4..b2e32fe 100644
--- a/components/camel-mongodb/pom.xml
+++ b/components/camel-mongodb/pom.xml
@@ -58,7 +58,7 @@
<!-- test dependencies -->
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-test-spring</artifactId>
+ <artifactId>camel-test-spring-junit5</artifactId>
<scope>test</scope>
</dependency>
<dependency>
@@ -77,11 +77,6 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.mongo</artifactId>
<scope>test</scope>
diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbProducer.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbProducer.java
index 3e1f069..71a771f 100644
--- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbProducer.java
+++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/MongoDbProducer.java
@@ -256,12 +256,12 @@ public class MongoDbProducer extends DefaultProducer {
}
private void copyHeaders(Exchange exchange) {
- MessageHelper.copyHeaders(exchange.getIn(), exchange.getOut(), false);
+ MessageHelper.copyHeaders(exchange.getIn(), exchange.getMessage(), false);
}
private void moveBodyToOutIfResultIsReturnedAsHeader(Exchange exchange, MongoDbOperation operation) {
if (isWriteOperation(operation) && endpoint.isWriteResultAsHeader()) {
- exchange.getOut().setBody(exchange.getIn().getBody());
+ exchange.getMessage().setBody(exchange.getIn().getBody());
}
}
@@ -269,9 +269,9 @@ public class MongoDbProducer extends DefaultProducer {
// determine where to set the WriteResult: as the OUT body or as an IN
// message header
if (isWriteOperation(operation) && endpoint.isWriteResultAsHeader()) {
- exchange.getOut().setHeader(WRITERESULT, result);
+ exchange.getMessage().setHeader(WRITERESULT, result);
} else {
- exchange.getOut().setBody(result);
+ exchange.getMessage().setBody(result);
}
}
@@ -301,7 +301,7 @@ public class MongoDbProducer extends DefaultProducer {
}
Document ret = dbCol.find(query).projection(fieldFilter).sort(sortBy).first();
- exchange.getOut().setHeader(RESULT_TOTAL_SIZE, ret == null ? 0 : 1);
+ exchange.getMessage().setHeader(RESULT_TOTAL_SIZE, ret == null ? 0 : 1);
return ret;
} catch (InvalidPayloadException e) {
throw new CamelMongoDbException("Payload is no Document", e);
@@ -339,7 +339,7 @@ public class MongoDbProducer extends DefaultProducer {
try {
ret.iterator().forEachRemaining(((List<String>) result)::add);
- exchange.getOut().setHeader(MongoDbConstants.RESULT_PAGE_SIZE, ((List<String>) result).size());
+ exchange.getMessage().setHeader(MongoDbConstants.RESULT_PAGE_SIZE, ((List<String>) result).size());
} finally {
ret.iterator().close();
}
@@ -397,7 +397,7 @@ public class MongoDbProducer extends DefaultProducer {
try {
result = new ArrayList<>();
ret.iterator().forEachRemaining(((List<Document>)result)::add);
- exchange.getOut().setHeader(RESULT_PAGE_SIZE, ((List<Document>)result).size());
+ exchange.getMessage().setHeader(RESULT_PAGE_SIZE, ((List<Document>)result).size());
} finally {
ret.iterator().close();
}
@@ -479,9 +479,9 @@ public class MongoDbProducer extends DefaultProducer {
result = dbCol.updateMany(updateCriteria, objNew, options);
}
if (result.isModifiedCountAvailable()) {
- exchange.getOut().setHeader(RECORDS_AFFECTED, result.getModifiedCount());
+ exchange.getMessage().setHeader(RECORDS_AFFECTED, result.getModifiedCount());
}
- exchange.getOut().setHeader(RECORDS_MATCHED, result.getMatchedCount());
+ exchange.getMessage().setHeader(RECORDS_MATCHED, result.getMatchedCount());
return result;
} catch (InvalidPayloadException e) {
throw new CamelMongoDbException("Invalid payload for update", e);
@@ -497,7 +497,7 @@ public class MongoDbProducer extends DefaultProducer {
DeleteResult result = dbCol.deleteMany(removeObj);
if (result.wasAcknowledged()) {
- exchange.getOut().setHeader(RECORDS_AFFECTED, result.getDeletedCount());
+ exchange.getMessage().setHeader(RECORDS_AFFECTED, result.getDeletedCount());
}
return result;
} catch (InvalidPayloadException e) {
@@ -540,7 +540,7 @@ public class MongoDbProducer extends DefaultProducer {
try {
result = new ArrayList<>();
aggregationResult.iterator().forEachRemaining(((List<Document>) result)::add);
- exchange.getOut().setHeader(MongoDbConstants.RESULT_PAGE_SIZE, ((List<Document>) result).size());
+ exchange.getMessage().setHeader(MongoDbConstants.RESULT_PAGE_SIZE, ((List<Document>) result).size());
} finally {
aggregationResult.iterator().close();
}
@@ -584,7 +584,7 @@ public class MongoDbProducer extends DefaultProducer {
fieldFilter = new Document();
}
ret = dbCol.find(o).projection(fieldFilter).first();
- exchange.getOut().setHeader(RESULT_TOTAL_SIZE, ret == null ? 0 : 1);
+ exchange.getMessage().setHeader(RESULT_TOTAL_SIZE, ret == null ? 0 : 1);
return ret;
} catch (InvalidPayloadException e) {
throw new CamelMongoDbException("Invalid payload for findById", e);
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java
index 53d2210..b9ca2df 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java
@@ -24,14 +24,17 @@ import com.mongodb.client.MongoDatabase;
import org.apache.camel.CamelContext;
import org.apache.camel.CamelExecutionException;
import org.apache.camel.spring.SpringCamelContext;
-import org.apache.camel.test.junit4.CamelTestSupport;
+import org.apache.camel.test.junit5.CamelTestSupport;
import org.apache.camel.util.IOHelper;
import org.apache.camel.util.ObjectHelper;
import org.bson.Document;
-import org.junit.After;
+import org.junit.jupiter.api.AfterEach;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
public abstract class AbstractMongoDbTest extends CamelTestSupport {
protected static final String SCHEME = "mongodb";
@@ -71,7 +74,7 @@ public abstract class AbstractMongoDbTest extends CamelTestSupport {
}
@Override
- @After
+ @AfterEach
public void tearDown() throws Exception {
testCollection.drop();
dynamicCollection.drop();
@@ -95,7 +98,7 @@ public abstract class AbstractMongoDbTest extends CamelTestSupport {
protected void createAuthorizationUser() {
MongoDatabase admin = mongo.getDatabase("admin");
MongoCollection<Document> usersCollection = admin.getCollection("system.users");
- if (usersCollection.count() == 0) {
+ if (usersCollection.countDocuments() == 0) {
usersCollection.insertOne(Document.parse("{\n"
+ " \"_id\": \"admin.test-user\",\n"
+ " \"user\": \"test-user\",\n"
@@ -126,17 +129,17 @@ public abstract class AbstractMongoDbTest extends CamelTestSupport {
IOHelper.close(f);
testCollection.insertOne(Document.parse(doc));
}
- assertEquals("Data pumping of 1000 entries did not complete entirely", 1000L, testCollection.count());
+ assertEquals(1000L, testCollection.countDocuments(), "Data pumping of 1000 entries did not complete entirely");
}
protected CamelMongoDbException extractAndAssertCamelMongoDbException(Object result, String message) {
- assertTrue("Result is not an Exception", result instanceof Throwable);
- assertTrue("Result is not an CamelExecutionException", result instanceof CamelExecutionException);
+ assertTrue(result instanceof Throwable, "Result is not an Exception");
+ assertTrue(result instanceof CamelExecutionException, "Result is not an CamelExecutionException");
Throwable exc = ((CamelExecutionException)result).getCause();
- assertTrue("Result is not an CamelMongoDbException", exc instanceof CamelMongoDbException);
+ assertTrue(exc instanceof CamelMongoDbException, "Result is not an CamelMongoDbException");
CamelMongoDbException camelExc = ObjectHelper.cast(CamelMongoDbException.class, exc);
if (message != null) {
- assertTrue("CamelMongoDbException doesn't contain desired message string", camelExc.getMessage().contains(message));
+ assertTrue(camelExc.getMessage().contains(message), "CamelMongoDbException doesn't contain desired message string");
}
return camelExc;
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbAggregateOperationTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbAggregateOperationTest.java
index 9473b5a..6d1fcc3 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbAggregateOperationTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbAggregateOperationTest.java
@@ -23,7 +23,12 @@ import java.util.Map;
import com.mongodb.client.MongoIterable;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.apache.camel.test.junit5.TestSupport.assertListSize;
public class MongoDbAggregateOperationTest extends AbstractMongoDbTest {
@@ -31,7 +36,7 @@ public class MongoDbAggregateOperationTest extends AbstractMongoDbTest {
@Test
public void testAggregate() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
// result sorted by _id
@@ -40,46 +45,46 @@ public class MongoDbAggregateOperationTest extends AbstractMongoDbTest {
"[{ $match : {$or : [{\"scientist\" : \"Darwin\"},{\"scientist\" : \"Einstein\"}]}},"
+ "{ $group: { _id: \"$scientist\", count: { $sum: 1 }} },{ $sort : { _id : 1}} ]");
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>) result;
assertListSize("Result does not contain 2 elements", resultList, 2);
- assertEquals("First result Document._id should be Darwin", "Darwin", resultList.get(0).get("_id"));
- assertEquals("First result Document.count should be 100", 100, resultList.get(0).get("count"));
- assertEquals("Second result Document._id should be Einstein", "Einstein", resultList.get(1).get("_id"));
- assertEquals("Second result Document.count should be 100", 100, resultList.get(1).get("count"));
+ assertEquals("Darwin", resultList.get(0).get("_id"), "First result Document._id should be Darwin");
+ assertEquals(100, resultList.get(0).get("count"), "First result Document.count should be 100");
+ assertEquals("Einstein", resultList.get(1).get("_id"), "Second result Document._id should be Einstein");
+ assertEquals(100, resultList.get(1).get("count"), "Second result Document.count should be 100");
}
@Test
public void testAggregateDBCursor() {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Object result = template
.requestBody("direct:aggregateDBCursor",
"[{ $match : {$or : [{\"scientist\" : \"Darwin\"},{\"scientist\" : \"Einstein\"}]}}]");
- assertTrue("Result is not of type DBCursor", result instanceof MongoIterable);
+ assertTrue(result instanceof MongoIterable, "Result is not of type DBCursor");
MongoIterable<Document> resultCursor = (MongoIterable<Document>) result;
// Ensure that all returned documents contain all fields
int count = 0;
for (Document document : resultCursor) {
- assertNotNull("Document in returned list should contain all fields", document.get("_id"));
- assertNotNull("Document in returned list should contain all fields", document.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", document.get("fixedField"));
+ assertNotNull(document.get("_id"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("fixedField"), "Document in returned list should contain all fields");
count++;
}
- assertEquals("Result does not contain 200 elements", 200, count);
+ assertEquals(200, count, "Result does not contain 200 elements");
}
@Test
public void testAggregateWithOptions() {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Map<String, Object> options = new HashMap<>();
@@ -90,19 +95,19 @@ public class MongoDbAggregateOperationTest extends AbstractMongoDbTest {
.requestBodyAndHeaders("direct:aggregateDBCursor",
"[{ $match : {$or : [{\"scientist\" : \"Darwin\"},{\"scientist\" : \"Einstein\"}]}}]", options);
- assertTrue("Result is not of type DBCursor", result instanceof MongoIterable);
+ assertTrue(result instanceof MongoIterable, "Result is not of type DBCursor");
MongoIterable<Document> resultCursor = (MongoIterable<Document>) result;
// Ensure that all returned documents contain all fields
int count = 0;
for (Document document : resultCursor) {
- assertNotNull("Document in returned list should contain all fields", document.get("_id"));
- assertNotNull("Document in returned list should contain all fields", document.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", document.get("fixedField"));
+ assertNotNull(document.get("_id"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("fixedField"), "Document in returned list should contain all fields");
count++;
}
- assertEquals("Result does not contain 200 elements", 200, count);
+ assertEquals(200, count, "Result does not contain 200 elements");
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBigDecimalConverterTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBigDecimalConverterTest.java
index 199bf8a..2a58eca 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBigDecimalConverterTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBigDecimalConverterTest.java
@@ -21,7 +21,11 @@ import java.math.BigDecimal;
import com.mongodb.BasicDBObject;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbBigDecimalConverterTest extends AbstractMongoDbTest {
@@ -37,12 +41,12 @@ public class MongoDbBigDecimalConverterTest extends AbstractMongoDbTest {
@Test
public void testBigDecimalAutoConversion() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
NumberClass testClass = new NumberClass();
Object result = template.requestBody("direct:insert", testClass);
assertTrue(result instanceof Document);
Document b = testCollection.find(new BasicDBObject("_id", testClass._id)).first();
- assertNotNull("No record with 'testInsertString' _id", b);
+ assertNotNull(b, "No record with 'testInsertString' _id");
assertTrue(testClass.aNumber.equals(new BigDecimal((double) b.get("aNumber"))));
assertEquals(testClass.bNumber, new BigDecimal((double) b.get("bNumber")));
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBulkWriteOperationTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBulkWriteOperationTest.java
index 6e2bec9..bf6b7f1 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBulkWriteOperationTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbBulkWriteOperationTest.java
@@ -30,14 +30,18 @@ import com.mongodb.client.model.WriteModel;
import org.apache.camel.CamelExecutionException;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.fail;
public class MongoDbBulkWriteOperationTest extends AbstractMongoDbTest {
@Test
public void testBulkWrite() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
List<WriteModel<Document>> bulkOperations = Arrays
.asList(new InsertOneModel<>(new Document("scientist", "Pierre Curie")),
@@ -53,18 +57,18 @@ public class MongoDbBulkWriteOperationTest extends AbstractMongoDbTest {
assertNotNull(result);
// 1 insert
- assertEquals("Records inserted should be 2 : ", 1, result.getInsertedCount());
+ assertEquals(1, result.getInsertedCount(), "Records inserted should be 2 : ");
// 1 updateOne + 100 updateMany + 1 replaceOne
- assertEquals("Records matched should be 102 : ", 102, result.getMatchedCount());
- assertEquals("Records modified should be 102 : ", 102, result.getModifiedCount());
+ assertEquals(102, result.getMatchedCount(), "Records matched should be 102 : ");
+ assertEquals(102, result.getModifiedCount(), "Records modified should be 102 : ");
// 1 deleteOne + 100 deleteMany
- assertEquals("Records deleted should be 101 : ", 101, result.getDeletedCount());
+ assertEquals(101, result.getDeletedCount(), "Records deleted should be 101 : ");
}
@Test
public void testOrderedBulkWriteWithError() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
List<WriteModel<Document>> bulkOperations = Arrays
@@ -81,14 +85,14 @@ public class MongoDbBulkWriteOperationTest extends AbstractMongoDbTest {
} catch (CamelExecutionException e) {
extractAndAssertCamelMongoDbException(e, "duplicate key error");
// count = 1000 records + 1 inserted
- assertEquals(1001, testCollection.count());
+ assertEquals(1001, testCollection.countDocuments());
}
}
@Test
public void testUnorderedBulkWriteWithError() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
List<WriteModel<Document>> bulkOperations = Arrays
@@ -104,7 +108,7 @@ public class MongoDbBulkWriteOperationTest extends AbstractMongoDbTest {
} catch (CamelExecutionException e) {
extractAndAssertCamelMongoDbException(e, "duplicate key error");
// count = 1000 + 2 inserted + 1 deleted
- assertEquals(1001, testCollection.count());
+ assertEquals(1001, testCollection.countDocuments());
}
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumerTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumerTest.java
index dc1bfe0..c596be8 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumerTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbChangeStreamsConsumerTest.java
@@ -21,7 +21,9 @@ import com.mongodb.client.model.CreateCollectionOptions;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class MongoDbChangeStreamsConsumerTest extends AbstractMongoDbTest {
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConnectionBeansTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConnectionBeansTest.java
index 8d8e246..cc12f1a 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConnectionBeansTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConnectionBeansTest.java
@@ -18,7 +18,12 @@ package org.apache.camel.component.mongodb;
import com.mongodb.MongoClient;
import org.apache.camel.Endpoint;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.apache.camel.test.junit5.TestSupport.assertIsInstanceOf;
public class MongoDbConnectionBeansTest extends AbstractMongoDbTest {
@@ -50,11 +55,12 @@ public class MongoDbConnectionBeansTest extends AbstractMongoDbTest {
assertEquals(myDbS, testEndpoint.getMongoConnection());
}
- @Test(expected = Exception.class)
+ @Test
public void checkMissingConnection() {
- MongoDbEndpoint testEndpoint = context.getEndpoint(
- "mongodb:anythingNotRelated?database={{mongodb.testDb}}&collection={{mongodb.testCollection}}&operation=count&dynamicity=true",
- MongoDbEndpoint.class);
+ assertThrows(Exception.class, () -> {
+ MongoDbEndpoint testEndpoint = context
+ .getEndpoint("mongodb:anythingNotRelated?database={{mongodb.testDb}}&collection={{mongodb.testCollection}}&operation=count&dynamicity=true", MongoDbEndpoint.class);
+ });
}
@Test
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConversionsTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConversionsTest.java
index a5b2ec1..3e80f42 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConversionsTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbConversionsTest.java
@@ -23,16 +23,18 @@ import java.util.Map;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.converter.IOConverter;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static com.mongodb.client.model.Filters.eq;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
public class MongoDbConversionsTest extends AbstractMongoDbTest {
@Test
public void testInsertMap() throws InterruptedException {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Map<String, Object> m1 = new HashMap<>();
Map<String, String> m1Nested = new HashMap<>();
@@ -48,56 +50,56 @@ public class MongoDbConversionsTest extends AbstractMongoDbTest {
// Object result =
template.requestBody("direct:insertMap", m1);
Document b = testCollection.find(eq(MONGO_ID, "testInsertMap")).first();
- assertNotNull("No record with 'testInsertMap' _id", b);
+ assertNotNull(b, "No record with 'testInsertMap' _id");
}
@Test
public void testInsertPojo() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
// Object result =
template.requestBody("direct:insertPojo", new MyPojoTest());
Document b = testCollection.find(eq(MONGO_ID, "testInsertPojo")).first();
- assertNotNull("No record with 'testInsertPojo' _id", b);
+ assertNotNull(b, "No record with 'testInsertPojo' _id");
}
@Test
public void testInsertJsonString() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
// Object result =
template.requestBody("direct:insertJsonString", "{\"fruits\": [\"apple\", \"banana\", \"papaya\"], \"veggie\": \"broccoli\", \"_id\": \"testInsertJsonString\"}");
// assertTrue(result instanceof WriteResult);
Document b = testCollection.find(eq(MONGO_ID, "testInsertJsonString")).first();
- assertNotNull("No record with 'testInsertJsonString' _id", b);
+ assertNotNull(b, "No record with 'testInsertJsonString' _id");
}
@Test
public void testInsertJsonInputStream() throws Exception {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
// Object result =
template.requestBody("direct:insertJsonString",
IOConverter.toInputStream("{\"fruits\": [\"apple\", \"banana\"], \"veggie\": \"broccoli\", \"_id\": \"testInsertJsonString\"}\n", null));
Document b = testCollection.find(eq(MONGO_ID, "testInsertJsonString")).first();
- assertNotNull("No record with 'testInsertJsonString' _id", b);
+ assertNotNull(b, "No record with 'testInsertJsonString' _id");
}
@Test
public void testInsertJsonInputStreamWithSpaces() throws Exception {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
template.requestBody("direct:insertJsonString", IOConverter.toInputStream(" {\"test\": [\"test\"], \"_id\": \"testInsertJsonStringWithSpaces\"}\n", null));
Document b = testCollection.find(eq(MONGO_ID, "testInsertJsonStringWithSpaces")).first();
- assertNotNull("No record with 'testInsertJsonStringWithSpaces' _id", b);
+ assertNotNull(b, "No record with 'testInsertJsonStringWithSpaces' _id");
}
@Test
public void testInsertBsonInputStream() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Document document = new Document(MONGO_ID, "testInsertBsonString");
// Object result =
template.requestBody("direct:insertJsonString", new ByteArrayInputStream(document.toJson().getBytes()));
Document b = testCollection.find(eq(MONGO_ID, "testInsertBsonString")).first();
- assertNotNull("No record with 'testInsertBsonString' _id", b);
+ assertNotNull(b, "No record with 'testInsertBsonString' _id");
}
@Override
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbDynamicityTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbDynamicityTest.java
index baeda1e..46305a0 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbDynamicityTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbDynamicityTest.java
@@ -23,19 +23,24 @@ import java.util.stream.StreamSupport;
import com.mongodb.client.MongoCollection;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static com.mongodb.client.model.Filters.eq;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+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.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbDynamicityTest extends AbstractMongoDbTest {
@Test
public void testInsertDynamicityDisabled() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityDisabled\", \"a\" : \"1\"}";
Map<String, Object> headers = new HashMap<>();
@@ -45,25 +50,25 @@ public class MongoDbDynamicityTest extends AbstractMongoDbTest {
template.requestBodyAndHeaders("direct:noDynamicity", body, headers);
Document b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityDisabled")).first();
- assertNotNull("No record with 'testInsertDynamicityDisabled' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityDisabled' _id");
body = "{\"_id\": \"testInsertDynamicityDisabledExplicitly\", \"a\" : \"1\"}";
// result =
template.requestBodyAndHeaders("direct:noDynamicityExplicit", body, headers);
b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityDisabledExplicitly")).first();
- assertNotNull("No record with 'testInsertDynamicityDisabledExplicitly' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityDisabledExplicitly' _id");
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
}
@Test
public void testInsertDynamicityEnabledDBOnly() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityEnabledDBOnly\", \"a\" : \"1\"}";
Map<String, Object> headers = new HashMap<>();
@@ -74,21 +79,21 @@ public class MongoDbDynamicityTest extends AbstractMongoDbTest {
MongoCollection<Document> localDynamicCollection = mongo.getDatabase("otherDB").getCollection(testCollection.getNamespace().getCollectionName(), Document.class);
Document b = localDynamicCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledDBOnly")).first();
- assertNotNull("No record with 'testInsertDynamicityEnabledDBOnly' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityEnabledDBOnly' _id");
b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledDBOnly")).first();
- assertNull("There is a record with 'testInsertDynamicityEnabledDBOnly' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertDynamicityEnabledDBOnly' _id in the test collection");
- assertTrue("The otherDB database should exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertTrue(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should exist");
}
@Test
public void testInsertDynamicityEnabledCollectionOnly() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityEnabledCollectionOnly\", \"a\" : \"1\"}";
Map<String, Object> headers = new HashMap<>();
@@ -99,20 +104,20 @@ public class MongoDbDynamicityTest extends AbstractMongoDbTest {
MongoCollection<Document> loaclDynamicCollection = db.getCollection("otherCollection", Document.class);
Document b = loaclDynamicCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledCollectionOnly")).first();
- assertNotNull("No record with 'testInsertDynamicityEnabledCollectionOnly' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityEnabledCollectionOnly' _id");
b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledDBOnly")).first();
- assertNull("There is a record with 'testInsertDynamicityEnabledCollectionOnly' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertDynamicityEnabledCollectionOnly' _id in the test collection");
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
}
@Test
public void testInsertDynamicityEnabledDBAndCollection() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityEnabledDBAndCollection\", \"a\" : \"1\"}";
Map<String, Object> headers = new HashMap<>();
@@ -124,12 +129,12 @@ public class MongoDbDynamicityTest extends AbstractMongoDbTest {
MongoCollection<Document> loaclDynamicCollection = mongo.getDatabase("otherDB").getCollection("otherCollection", Document.class);
Document b = loaclDynamicCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledDBAndCollection")).first();
- assertNotNull("No record with 'testInsertDynamicityEnabledDBAndCollection' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityEnabledDBAndCollection' _id");
b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledDBOnly")).first();
- assertNull("There is a record with 'testInsertDynamicityEnabledDBAndCollection' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertDynamicityEnabledDBAndCollection' _id in the test collection");
- assertTrue("The otherDB database should exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertTrue(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should exist");
}
@Override
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbExceptionHandlingTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbExceptionHandlingTest.java
index c1908ae..ffd2b2a 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbExceptionHandlingTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbExceptionHandlingTest.java
@@ -19,14 +19,18 @@ package org.apache.camel.component.mongodb;
import com.mongodb.DBObject;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.fail;
public class MongoDbExceptionHandlingTest extends AbstractMongoDbTest {
@Test
public void testInduceParseException() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
// notice missing quote at the end of Einstein
@@ -41,7 +45,7 @@ public class MongoDbExceptionHandlingTest extends AbstractMongoDbTest {
@Test
public void testInduceParseAndThenOkException() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
// notice missing quote at the end of Einstein
@@ -61,7 +65,7 @@ public class MongoDbExceptionHandlingTest extends AbstractMongoDbTest {
@Test
public void testErroneousDynamicOperation() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
try {
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbFindOperationTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbFindOperationTest.java
index 361064c..5dc1d85 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbFindOperationTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbFindOperationTest.java
@@ -27,21 +27,26 @@ import org.apache.commons.lang3.ObjectUtils;
import org.bson.Document;
import org.bson.conversions.Bson;
import org.bson.types.ObjectId;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static com.mongodb.client.model.Filters.eq;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+import static org.apache.camel.test.junit5.TestSupport.assertListSize;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbFindOperationTest extends AbstractMongoDbTest {
@Test
public void testFindAllNoCriteriaOperation() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Object result = template.requestBody("direct:findAll", ObjectUtils.NULL);
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
@@ -50,27 +55,27 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
// Ensure that all returned documents contain all fields
for (Document document : resultList) {
- assertNotNull("Document in returned list should contain all fields", document.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", document.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", document.get("fixedField"));
+ assertNotNull(document.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(document.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("fixedField"), "Document in returned list should contain all fields");
}
Exchange resultExchange = getMockEndpoint("mock:resultFindAll").getReceivedExchanges().get(0);
// TODO: decide what to do with total count
// assertEquals("Result total size header should equal 1000", 1000,
// resultExchange.getIn().getHeader(MongoDbConstants.RESULT_TOTAL_SIZE));
- assertEquals("Result page size header should equal 1000", 1000, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE));
+ assertEquals(1000, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE), "Result page size header should equal 1000");
}
@Test
public void testFindAllWithQueryAndNoFIlter() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Object result = template.requestBody("direct:findAll", eq("scientist", "Einstein"));
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
@@ -80,25 +85,25 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
// Ensure that all returned documents contain all fields, and that they
// only contain 'Einstein'
for (Document document : resultList) {
- assertNotNull("Document in returned list should not contain field _id", document.get(MONGO_ID));
- assertNotNull("Document in returned list does not contain field 'scientist'", document.get("scientist"));
- assertNotNull("Document in returned list should not contain field fixedField", document.get("fixedField"));
- assertEquals("Document.scientist should only be Einstein", "Einstein", document.get("scientist"));
+ assertNotNull(document.get(MONGO_ID), "Document in returned list should not contain field _id");
+ assertNotNull(document.get("scientist"), "Document in returned list does not contain field 'scientist'");
+ assertNotNull(document.get("fixedField"), "Document in returned list should not contain field fixedField");
+ assertEquals("Einstein", document.get("scientist"), "Document.scientist should only be Einstein");
}
Exchange resultExchange = getMockEndpoint("mock:resultFindAll").getReceivedExchanges().get(0);
- assertEquals("Result page size header should equal 100", 100, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE));
+ assertEquals(100, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE), "Result page size header should equal 100");
}
@Test
public void testFindAllWithQueryAndFilter() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Bson fieldFilter = Projections.exclude(MONGO_ID, "fixedField");
Bson query = eq("scientist", "Einstein");
Object result = template.requestBodyAndHeader("direct:findAll", query, MongoDbConstants.FIELDS_PROJECTION, fieldFilter);
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
@@ -108,25 +113,25 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
// Ensure that all returned documents contain all fields, and that they
// only contain 'Einstein'
for (Document document : resultList) {
- assertNull("Document in returned list should not contain field _id", document.get(MONGO_ID));
- assertNotNull("Document in returned list does not contain field 'scientist'", document.get("scientist"));
- assertNull("Document in returned list should not contain field fixedField", document.get("fixedField"));
- assertEquals("Document.scientist should only be Einstein", "Einstein", document.get("scientist"));
+ assertNull(document.get(MONGO_ID), "Document in returned list should not contain field _id");
+ assertNotNull(document.get("scientist"), "Document in returned list does not contain field 'scientist'");
+ assertNull(document.get("fixedField"), "Document in returned list should not contain field fixedField");
+ assertEquals("Einstein", document.get("scientist"), "Document.scientist should only be Einstein");
}
Exchange resultExchange = getMockEndpoint("mock:resultFindAll").getReceivedExchanges().get(0);
- assertEquals("Result page size header should equal 100", 100, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE));
+ assertEquals(100, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE), "Result page size header should equal 100");
}
@Test
public void testFindAllNoCriteriaWithFilterOperation() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Bson fieldFilter = Projections.exclude(MONGO_ID, "fixedField");
Object result = template.requestBodyAndHeader("direct:findAll", ObjectUtils.NULL, MongoDbConstants.FIELDS_PROJECTION, fieldFilter);
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
@@ -135,22 +140,22 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
// Ensure that all returned documents contain all fields
for (Document document : resultList) {
- assertNull("Document in returned list should not contain field _id", document.get(MONGO_ID));
- assertNotNull("Document in returned list does not contain field 'scientist'", document.get("scientist"));
- assertNull("Document in returned list should not contain field fixedField", document.get("fixedField"));
+ assertNull(document.get(MONGO_ID), "Document in returned list should not contain field _id");
+ assertNotNull(document.get("scientist"), "Document in returned list does not contain field 'scientist'");
+ assertNull(document.get("fixedField"), "Document in returned list should not contain field fixedField");
}
Exchange resultExchange = getMockEndpoint("mock:resultFindAll").getReceivedExchanges().get(0);
// assertEquals("Result total size header should equal 1000", 1000,
// resultExchange.getIn().getHeader(MongoDbConstants.RESULT_TOTAL_SIZE));
- assertEquals("Result page size header should equal 1000", 1000, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE));
+ assertEquals(1000, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE), "Result page size header should equal 1000");
}
@Test
public void testFindAllIterationOperation() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
// Repeat ten times, obtain 10 batches of 100 results each time
@@ -161,19 +166,19 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
headers.put(MongoDbConstants.NUM_TO_SKIP, numToSkip);
headers.put(MongoDbConstants.LIMIT, 100);
Object result = template.requestBodyAndHeaders("direct:findAll", ObjectUtils.NULL, headers);
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
assertListSize("Result does not contain 100 elements", resultList, 100);
- assertEquals("Id of first record is not as expected", numToSkip + 1, Integer.parseInt((String)resultList.get(0).get(MONGO_ID)));
+ assertEquals(numToSkip + 1, Integer.parseInt((String)resultList.get(0).get(MONGO_ID)), "Id of first record is not as expected");
// Ensure that all returned documents contain all fields
for (Document document : resultList) {
- assertNotNull("Document in returned list should contain all fields", document.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", document.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", document.get("fixedField"));
+ assertNotNull(document.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(document.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("fixedField"), "Document in returned list should contain all fields");
}
numToSkip = numToSkip + limit;
@@ -183,18 +188,18 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
// TODO: decide what to do with the total number of elements
// assertEquals("Result total size header should equal 1000", 1000,
// resultExchange.getIn().getHeader(MongoDbConstants.RESULT_TOTAL_SIZE));
- assertEquals("Result page size header should equal 100", 100, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE));
+ assertEquals(100, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_PAGE_SIZE), "Result page size header should equal 100");
}
}
@Test
public void testFindDistinctNoQuery() {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Object result = template.requestBodyAndHeader("direct:findDistinct", null, MongoDbConstants.DISTINCT_QUERY_FIELD, "scientist");
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<String> resultList = (List<String>)result;
@@ -204,13 +209,13 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
@Test
public void testFindDistinctWithQuery() {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Bson query = eq("scientist", "Einstein");
Object result = template.requestBodyAndHeader("direct:findDistinct", query, MongoDbConstants.DISTINCT_QUERY_FIELD, "scientist");
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<String> resultList = (List<String>)result;
@@ -222,55 +227,55 @@ public class MongoDbFindOperationTest extends AbstractMongoDbTest {
@Test
public void testFindOneByQuery() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Bson query = eq("scientist", "Einstein");
Document result = template.requestBody("direct:findOneByQuery", query, Document.class);
- assertTrue("Result is not of type Document", result instanceof Document);
+ assertTrue(result instanceof Document, "Result is not of type Document");
- assertNotNull("Document in returned list should contain all fields", result.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", result.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", result.get("fixedField"));
+ assertNotNull(result.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(result.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(result.get("fixedField"), "Document in returned list should contain all fields");
}
@Test
public void testFindOneById() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Document result = template.requestBody("direct:findById", "240", Document.class);
- assertTrue("Result is not of type Document", result instanceof Document);
+ assertTrue(result instanceof Document, "Result is not of type Document");
- assertEquals("The ID of the retrieved Document should equal 240", "240", result.get(MONGO_ID));
- assertEquals("The scientist name of the retrieved Document should equal Einstein", "Einstein", result.get("scientist"));
+ assertEquals("240", result.get(MONGO_ID), "The ID of the retrieved Document should equal 240");
+ assertEquals("Einstein", result.get("scientist"), "The scientist name of the retrieved Document should equal Einstein");
- assertNotNull("Document in returned list should contain all fields", result.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", result.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", result.get("fixedField"));
+ assertNotNull(result.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(result.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(result.get("fixedField"), "Document in returned list should contain all fields");
}
@Test
public void testFindOneByIdWithObjectId() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Document insertObject = new Document("scientist", "Einstein");
testCollection.insertOne(insertObject);
- assertTrue("The ID of the inserted document should be ObjectId", insertObject.get(MONGO_ID) instanceof ObjectId);
+ assertTrue(insertObject.get(MONGO_ID) instanceof ObjectId, "The ID of the inserted document should be ObjectId");
ObjectId id = insertObject.getObjectId(MONGO_ID);
Document result = template.requestBody("direct:findById", id, Document.class);
- assertTrue("Result is not of type Document", result instanceof Document);
+ assertTrue(result instanceof Document, "Result is not of type Document");
- assertTrue("The ID of the retrieved Document should be ObjectId", result.get(MONGO_ID) instanceof ObjectId);
- assertEquals("The ID of the retrieved Document should equal to the inserted", id, result.get(MONGO_ID));
- assertEquals("The scientist name of the retrieved Document should equal Einstein", "Einstein", result.get("scientist"));
+ assertTrue(result.get(MONGO_ID) instanceof ObjectId, "The ID of the retrieved Document should be ObjectId");
+ assertEquals(id, result.get(MONGO_ID), "The ID of the retrieved Document should equal to the inserted");
+ assertEquals("Einstein", result.get("scientist"), "The scientist name of the retrieved Document should equal Einstein");
- assertNotNull("Document in returned list should contain all fields", result.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", result.get("scientist"));
+ assertNotNull(result.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(result.get("scientist"), "Document in returned list should contain all fields");
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbHeaderHandlingTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbHeaderHandlingTest.java
index ee388c6..ce98615 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbHeaderHandlingTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbHeaderHandlingTest.java
@@ -21,17 +21,21 @@ import org.apache.camel.Exchange;
import org.apache.camel.Processor;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static com.mongodb.client.model.Filters.eq;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbHeaderHandlingTest extends AbstractMongoDbTest {
@Test
public void testInHeadersTransferredToOutOnCount() {
// a read operation
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Exchange result = template.request("direct:count", new Processor() {
@Override
public void process(Exchange exchange) throws Exception {
@@ -39,9 +43,9 @@ public class MongoDbHeaderHandlingTest extends AbstractMongoDbTest {
exchange.getIn().setHeader("abc", "def");
}
});
- assertTrue("Result is not of type Long", result.getOut().getBody() instanceof Long);
- assertEquals("Test collection should not contain any records", 0L, result.getOut().getBody());
- assertEquals("An input header was not returned", "def", result.getOut().getHeader("abc"));
+ assertTrue(result.getMessage().getBody() instanceof Long, "Result is not of type Long");
+ assertEquals(0L, result.getMessage().getBody(), "Test collection should not contain any records");
+ assertEquals("def", result.getMessage().getHeader("abc"), "An input header was not returned");
}
@Test
@@ -56,25 +60,25 @@ public class MongoDbHeaderHandlingTest extends AbstractMongoDbTest {
// TODO: WriteResult isn't return when inserting
// assertTrue(result.getOut().getBody() instanceof WriteResult);
- assertEquals("An input header was not returned", "def", result.getOut().getHeader("abc"));
+ assertEquals("def", result.getMessage().getHeader("abc"), "An input header was not returned");
Document b = testCollection.find(eq(MONGO_ID, "testInsertString")).first();
- assertNotNull("No record with 'testInsertString' _id", b);
+ assertNotNull(b, "No record with 'testInsertString' _id");
}
@Test
public void testWriteResultAsHeaderWithWriteOp() {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Object[] req = new Object[] {new Document(MONGO_ID, "testSave1").append("scientist", "Einstein").toJson(),
new Document(MONGO_ID, "testSave2").append("scientist", "Copernicus").toJson()};
// Object result =
template.requestBody("direct:insert", req);
// assertTrue(result instanceof WriteResult);
- assertEquals("Number of records persisted must be 2", 2, testCollection.count());
+ assertEquals(2, testCollection.countDocuments(), "Number of records persisted must be 2");
// Testing the save logic
final Document record1 = testCollection.find(eq(MONGO_ID, "testSave1")).first();
- assertEquals("Scientist field of 'testSave1' must equal 'Einstein'", "Einstein", record1.get("scientist"));
+ assertEquals("Einstein", record1.get("scientist"), "Scientist field of 'testSave1' must equal 'Einstein'");
record1.put("scientist", "Darwin");
// test that as a payload, we get back exactly our input, but enriched
@@ -85,12 +89,12 @@ public class MongoDbHeaderHandlingTest extends AbstractMongoDbTest {
exchange.getIn().setBody(record1);
}
});
- assertTrue(resultExch.getOut().getBody() instanceof Document);
- assertTrue(resultExch.getOut().getBody().equals(record1));
- assertTrue(resultExch.getOut().getHeader(MongoDbConstants.WRITERESULT) instanceof UpdateResult);
+ assertTrue(resultExch.getMessage().getBody() instanceof Document);
+ assertTrue(resultExch.getMessage().getBody().equals(record1));
+ assertTrue(resultExch.getMessage().getHeader(MongoDbConstants.WRITERESULT) instanceof UpdateResult);
Document record2 = testCollection.find(eq(MONGO_ID, "testSave1")).first();
- assertEquals("Scientist field of 'testSave1' must equal 'Darwin' after save operation", "Darwin", record2.get("scientist"));
+ assertEquals("Darwin", record2.get("scientist"), "Scientist field of 'testSave1' must equal 'Darwin' after save operation");
}
@@ -103,9 +107,9 @@ public class MongoDbHeaderHandlingTest extends AbstractMongoDbTest {
exchange.getIn().setHeader("abc", "def");
}
});
- assertTrue(resultExch.getOut().getBody() instanceof Document);
- assertNull(resultExch.getOut().getHeader(MongoDbConstants.WRITERESULT));
- assertEquals("def", resultExch.getOut().getHeader("abc"));
+ assertTrue(resultExch.getMessage().getBody() instanceof Document);
+ assertNull(resultExch.getMessage().getHeader(MongoDbConstants.WRITERESULT));
+ assertEquals("def", resultExch.getMessage().getHeader("abc"));
}
@Override
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbIndexTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbIndexTest.java
index 8fe7b1f..dc1c477 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbIndexTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbIndexTest.java
@@ -30,22 +30,27 @@ import com.mongodb.client.MongoCursor;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
import org.bson.conversions.Bson;
-import org.junit.Ignore;
-import org.junit.Test;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
import static com.mongodb.client.model.Filters.eq;
import static com.mongodb.client.model.Indexes.ascending;
import static com.mongodb.client.model.Indexes.descending;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+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.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbIndexTest extends AbstractMongoDbTest {
@Test
public void testInsertDynamicityEnabledDBAndCollectionAndIndex() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityEnabledDBAndCollection\", \"a\" : 1, \"b\" : 2}";
Map<String, Object> headers = new HashMap<>();
@@ -64,7 +69,7 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Object result = template.requestBodyAndHeaders("direct:dynamicityEnabled", body, headers);
- assertEquals("Response isn't of type WriteResult", Document.class, result.getClass());
+ assertEquals(Document.class, result.getClass(), "Response isn't of type WriteResult");
MongoCollection<Document> localDynamicCollection = mongo.getDatabase("otherDB").getCollection("otherCollection", Document.class);
@@ -75,24 +80,24 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Document key1 = iterator.next().get("key", Document.class);
Document key2 = iterator.next().get("key", Document.class);
- assertTrue("No index on the field a", key1.containsKey("a") && 1 == key1.getInteger("a"));
- assertTrue("No index on the field b", key2.containsKey("b") && -1 == key2.getInteger("b"));
+ assertTrue(key1.containsKey("a") && 1 == key1.getInteger("a"), "No index on the field a");
+ assertTrue(key2.containsKey("b") && -1 == key2.getInteger("b"), "No index on the field b");
Document b = localDynamicCollection.find(new Document(MONGO_ID, "testInsertDynamicityEnabledDBAndCollection")).first();
- assertNotNull("No record with 'testInsertDynamicityEnabledDBAndCollection' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityEnabledDBAndCollection' _id");
b = testCollection.find(new Document(MONGO_ID, "testInsertDynamicityEnabledDBOnly")).first();
- assertNull("There is a record with 'testInsertDynamicityEnabledDBAndCollection' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertDynamicityEnabledDBAndCollection' _id in the test collection");
- assertTrue("The otherDB database should exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertTrue(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should exist");
}
@Test
public void testInsertDynamicityEnabledCollectionAndIndex() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityEnabledCollectionAndIndex\", \"a\" : 1, \"b\" : 2}";
Map<String, Object> headers = new HashMap<>();
@@ -103,7 +108,7 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Object result = template.requestBodyAndHeaders("direct:dynamicityEnabled", body, headers);
- assertEquals("Response isn't of type WriteResult", Document.class, result.getClass());
+ assertEquals(Document.class, result.getClass(), "Response isn't of type WriteResult");
MongoCollection<Document> localDynamicCollection = db.getCollection("otherCollection", Document.class);
@@ -113,24 +118,24 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Document key1 = indexInfos.next().get("key", Document.class);
Document key2 = indexInfos.next().get("key", Document.class);
- assertTrue("No index on the field a", key1.containsKey("a") && 1 == key1.getInteger("a"));
- assertTrue("No index on the field b", key2.containsKey("b") && -1 == key2.getInteger("b"));
+ assertTrue(key1.containsKey("a") && 1 == key1.getInteger("a"), "No index on the field a");
+ assertTrue(key2.containsKey("b") && -1 == key2.getInteger("b"), "No index on the field b");
Document b = localDynamicCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledCollectionAndIndex")).first();
- assertNotNull("No record with 'testInsertDynamicityEnabledCollectionAndIndex' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityEnabledCollectionAndIndex' _id");
b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledDBOnly")).first();
- assertNull("There is a record with 'testInsertDynamicityEnabledDBAndCollection' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertDynamicityEnabledDBAndCollection' _id in the test collection");
- assertFalse("The otherDB database should not exist", mongo.getUsedDatabases().contains("otherDB"));
+ assertFalse(mongo.getUsedDatabases().contains("otherDB"), "The otherDB database should not exist");
}
@Test
public void testInsertDynamicityEnabledCollectionOnlyAndURIIndex() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
mongo.getDatabase("otherDB").drop();
db.getCollection("otherCollection").drop();
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
String body = "{\"_id\": \"testInsertDynamicityEnabledCollectionOnlyAndURIIndex\", \"a\" : 1, \"b\" : 2}";
Map<String, Object> headers = new HashMap<>();
@@ -138,7 +143,7 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Object result = template.requestBodyAndHeaders("direct:dynamicityEnabledWithIndexUri", body, headers);
- assertEquals("Response isn't of type WriteResult", Document.class, result.getClass());
+ assertEquals(Document.class, result.getClass(), "Response isn't of type WriteResult");
MongoCollection<Document> localDynamicCollection = db.getCollection("otherCollection", Document.class);
@@ -146,28 +151,28 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Document key1 = indexInfos.next().get("key", Document.class);
- assertFalse("No index on the field a", key1.containsKey("a") && "-1".equals(key1.getString("a")));
+ assertFalse(key1.containsKey("a") && "-1".equals(key1.getString("a")), "No index on the field a");
Document b = localDynamicCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledCollectionOnlyAndURIIndex")).first();
- assertNotNull("No record with 'testInsertDynamicityEnabledCollectionOnlyAndURIIndex' _id", b);
+ assertNotNull(b, "No record with 'testInsertDynamicityEnabledCollectionOnlyAndURIIndex' _id");
b = testCollection.find(eq(MONGO_ID, "testInsertDynamicityEnabledCollectionOnlyAndURIIndex")).first();
- assertNull("There is a record with 'testInsertDynamicityEnabledCollectionOnlyAndURIIndex' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertDynamicityEnabledCollectionOnlyAndURIIndex' _id in the test collection");
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
}
- @Ignore
+ @Disabled
@Test
public void testInsertAutoCreateCollectionAndURIIndex() {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
db.getCollection("otherCollection").deleteOne(new Document());
String body = "{\"_id\": \"testInsertAutoCreateCollectionAndURIIndex\", \"a\" : 1, \"b\" : 2}";
Map<String, Object> headers = new HashMap<>();
Object result = template.requestBodyAndHeaders("direct:dynamicityDisabled", body, headers);
- assertEquals("Response isn't of type WriteResult", WriteResult.class, result.getClass());
+ assertEquals(WriteResult.class, result.getClass(), "Response isn't of type WriteResult");
MongoCollection<Document> collection = db.getCollection("otherCollection", Document.class);
MongoCursor<Document> indexInfos = collection.listIndexes().iterator();
@@ -175,16 +180,16 @@ public class MongoDbIndexTest extends AbstractMongoDbTest {
Document key1 = indexInfos.next().get("key", Document.class);
Document key2 = indexInfos.next().get("key", Document.class);
- assertTrue("No index on the field b", key1.containsKey("b") && "-1".equals(key1.getString("b")));
- assertTrue("No index on the field a", key2.containsKey("a") && "1".equals(key2.getString("a")));
+ assertTrue(key1.containsKey("b") && "-1".equals(key1.getString("b")), "No index on the field b");
+ assertTrue(key2.containsKey("a") && "1".equals(key2.getString("a")), "No index on the field a");
Document b = collection.find(eq(MONGO_ID, "testInsertAutoCreateCollectionAndURIIndex")).first();
- assertNotNull("No record with 'testInsertAutoCreateCollectionAndURIIndex' _id", b);
+ assertNotNull(b, "No record with 'testInsertAutoCreateCollectionAndURIIndex' _id");
b = testCollection.find(eq(MONGO_ID, "testInsertAutoCreateCollectionAndURIIndex")).first();
- assertNull("There is a record with 'testInsertAutoCreateCollectionAndURIIndex' _id in the test collection", b);
+ assertNull(b, "There is a record with 'testInsertAutoCreateCollectionAndURIIndex' _id in the test collection");
- assertFalse("The otherDB database should not exist", StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals));
+ assertFalse(StreamSupport.stream(mongo.listDatabaseNames().spliterator(), false).anyMatch("otherDB"::equals), "The otherDB database should not exist");
}
@Override
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOperationsTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOperationsTest.java
index a4b8918..1d0a0ac 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOperationsTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOperationsTest.java
@@ -31,7 +31,7 @@ import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
import org.bson.conversions.Bson;
import org.bson.types.ObjectId;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static com.mongodb.client.model.Accumulators.sum;
import static com.mongodb.client.model.Aggregates.group;
@@ -43,39 +43,44 @@ import static com.mongodb.client.model.Updates.currentTimestamp;
import static com.mongodb.client.model.Updates.set;
import static java.util.Arrays.asList;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+import static org.apache.camel.test.junit5.TestSupport.assertListSize;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbOperationsTest extends AbstractMongoDbTest {
@Test
public void testCountOperation() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Object result = template.requestBody("direct:count", "irrelevantBody");
- assertTrue("Result is not of type Long", result instanceof Long);
- assertEquals("Test collection should not contain any records", 0L, result);
+ assertTrue(result instanceof Long, "Result is not of type Long");
+ assertEquals(0L, result, "Test collection should not contain any records");
// Insert a record and test that the endpoint now returns 1
testCollection.insertOne(Document.parse("{a:60}"));
result = template.requestBody("direct:count", "irrelevantBody");
- assertTrue("Result is not of type Long", result instanceof Long);
- assertEquals("Test collection should contain 1 record", 1L, result);
+ assertTrue(result instanceof Long, "Result is not of type Long");
+ assertEquals(1L, result, "Test collection should contain 1 record");
testCollection.deleteOne(new Document());
// test dynamicity
dynamicCollection.insertOne(Document.parse("{a:60}"));
result = template.requestBodyAndHeader("direct:count", "irrelevantBody", MongoDbConstants.COLLECTION, dynamicCollectionName);
- assertTrue("Result is not of type Long", result instanceof Long);
- assertEquals("Dynamic collection should contain 1 record", 1L, result);
+ assertTrue(result instanceof Long, "Result is not of type Long");
+ assertEquals(1L, result, "Dynamic collection should contain 1 record");
}
@Test
public void testInsertString() throws Exception {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Object result = template.requestBody("direct:insert", new Document(MONGO_ID, "testInsertString").append("scientist", "Einstein").toJson());
assertTrue(result instanceof Document);
Document b = testCollection.find(eq(MONGO_ID, "testInsertString")).first();
- assertNotNull("No record with 'testInsertString' _id", b);
+ assertNotNull(b, "No record with 'testInsertString' _id");
}
@Test
@@ -97,30 +102,30 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
@Test
public void testSave() throws Exception {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Object[] req = new Object[] {new Document(MONGO_ID, "testSave1").append("scientist", "Einstein").toJson(),
new Document(MONGO_ID, "testSave2").append("scientist", "Copernicus").toJson()};
Object result = template.requestBody("direct:insert", req);
assertTrue(result instanceof List);
- assertEquals("Number of records persisted must be 2", 2, testCollection.count());
+ assertEquals(2, testCollection.countDocuments(), "Number of records persisted must be 2");
// Testing the save logic
Document record1 = testCollection.find(eq(MONGO_ID, "testSave1")).first();
- assertEquals("Scientist field of 'testSave1' must equal 'Einstein'", "Einstein", record1.get("scientist"));
+ assertEquals("Einstein", record1.get("scientist"), "Scientist field of 'testSave1' must equal 'Einstein'");
record1.put("scientist", "Darwin");
result = template.requestBody("direct:save", record1);
assertTrue(result instanceof UpdateResult);
record1 = testCollection.find(eq(MONGO_ID, "testSave1")).first();
- assertEquals("Scientist field of 'testSave1' must equal 'Darwin' after save operation", "Darwin", record1.get("scientist"));
+ assertEquals("Darwin", record1.get("scientist"), "Scientist field of 'testSave1' must equal 'Darwin' after save operation");
}
@Test
public void testSaveWithoutId() {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
// This document should not be modified
Document doc = new Document("scientist", "Copernic");
template.requestBody("direct:insert", doc);
@@ -133,7 +138,7 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
assertEquals(0, result.getModifiedCount());
// Testing the save logic
Document record1 = testCollection.find(eq(MONGO_ID, result.getUpsertedId())).first();
- assertEquals("Scientist field of '" + result.getUpsertedId() + "' must equal 'Einstein'", "Einstein", record1.get("scientist"));
+ assertEquals("Einstein", record1.get("scientist"), "Scientist field of '" + result.getUpsertedId() + "' must equal 'Einstein'");
}
@Test
@@ -153,7 +158,7 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
@Test
public void testUpdate() throws Exception {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
for (int i = 1; i <= 100; i++) {
String body = null;
try (Formatter f = new Formatter();) {
@@ -166,12 +171,12 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
}
template.requestBody("direct:insert", body);
}
- assertEquals(100L, testCollection.count());
+ assertEquals(100L, testCollection.countDocuments());
// Testing the update logic
Bson extraField = eq("extraField", true);
- assertEquals("Number of records with 'extraField' flag on must equal 50", 50L, testCollection.count(extraField));
- assertEquals("Number of records with 'scientist' field = Darwin on must equal 0", 0, testCollection.count(new Document("scientist", "Darwin")));
+ assertEquals(50L, testCollection.countDocuments(extraField), "Number of records with 'extraField' flag on must equal 50");
+ assertEquals(0, testCollection.countDocuments(new Document("scientist", "Darwin")), "Number of records with 'scientist' field = Darwin on must equal 0");
Bson updateObj = combine(set("scientist", "Darwin"), currentTimestamp("lastModified"));
@@ -182,17 +187,17 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
exchange.getIn().setHeader(MongoDbConstants.MULTIUPDATE, true);
}
});
- Object result = resultExchange.getOut().getBody();
+ Object result = resultExchange.getMessage().getBody();
assertTrue(result instanceof UpdateResult);
- assertEquals("Number of records updated header should equal 50", 50L, resultExchange.getOut().getHeader(MongoDbConstants.RECORDS_AFFECTED));
+ assertEquals(50L, resultExchange.getMessage().getHeader(MongoDbConstants.RECORDS_AFFECTED), "Number of records updated header should equal 50");
- assertEquals("Number of records with 'scientist' field = Darwin on must equal 50 after update", 50, testCollection.count(new Document("scientist", "Darwin")));
+ assertEquals(50, testCollection.countDocuments(new Document("scientist", "Darwin")), "Number of records with 'scientist' field = Darwin on must equal 50 after update");
}
@Test
public void testUpdateFromString() throws Exception {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
for (int i = 1; i <= 100; i++) {
String body = null;
try (Formatter f = new Formatter();) {
@@ -205,12 +210,12 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
}
template.requestBody("direct:insert", body);
}
- assertEquals(100L, testCollection.count());
+ assertEquals(100L, testCollection.countDocuments());
// Testing the update logic
Bson extraField = eq("extraField", true);
- assertEquals("Number of records with 'extraField' flag on must equal 50", 50L, testCollection.count(extraField));
- assertEquals("Number of records with 'scientist' field = Darwin on must equal 0", 0, testCollection.count(new Document("scientist", "Darwin")));
+ assertEquals(50L, testCollection.countDocuments(extraField), "Number of records with 'extraField' flag on must equal 50");
+ assertEquals(0, testCollection.countDocuments(new Document("scientist", "Darwin")), "Number of records with 'scientist' field = Darwin on must equal 0");
Bson updateObj = combine(set("scientist", "Darwin"), currentTimestamp("lastModified"));
@@ -224,17 +229,17 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
exchange.getIn().setHeader(MongoDbConstants.MULTIUPDATE, true);
}
});
- Object result = resultExchange.getOut().getBody();
+ Object result = resultExchange.getMessage().getBody();
assertTrue(result instanceof UpdateResult);
- assertEquals("Number of records updated header should equal 50", 50L, resultExchange.getOut().getHeader(MongoDbConstants.RECORDS_AFFECTED));
+ assertEquals(50L, resultExchange.getMessage().getHeader(MongoDbConstants.RECORDS_AFFECTED), "Number of records updated header should equal 50");
- assertEquals("Number of records with 'scientist' field = Darwin on must equal 50 after update", 50, testCollection.count(new Document("scientist", "Darwin")));
+ assertEquals(50, testCollection.countDocuments(new Document("scientist", "Darwin")), "Number of records with 'scientist' field = Darwin on must equal 50 after update");
}
@Test
public void testUpdateUsingFieldsFilterHeader() throws Exception {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
for (int i = 1; i <= 100; i++) {
String body = null;
try (Formatter f = new Formatter();) {
@@ -247,12 +252,12 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
}
template.requestBody("direct:insert", body);
}
- assertEquals(100L, testCollection.count());
+ assertEquals(100L, testCollection.countDocuments());
// Testing the update logic
Bson extraField = eq("extraField", true);
- assertEquals("Number of records with 'extraField' flag on must equal 50", 50L, testCollection.count(extraField));
- assertEquals("Number of records with 'scientist' field = Darwin on must equal 0", 0, testCollection.count(new Document("scientist", "Darwin")));
+ assertEquals(50L, testCollection.countDocuments(extraField), "Number of records with 'extraField' flag on must equal 50");
+ assertEquals(0, testCollection.countDocuments(new Document("scientist", "Darwin")), "Number of records with 'scientist' field = Darwin on must equal 0");
Bson updateObj = combine(set("scientist", "Darwin"), currentTimestamp("lastModified"));
HashMap<String, Object> headers = new HashMap<>();
@@ -260,14 +265,14 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
headers.put(MongoDbConstants.CRITERIA, extraField);
Object result = template.requestBodyAndHeaders("direct:update", updateObj, headers);
assertTrue(result instanceof UpdateResult);
- assertEquals("Number of records updated header should equal 50", 50L, UpdateResult.class.cast(result).getModifiedCount());
- assertEquals("Number of records with 'scientist' field = Darwin on must equal 50 after update", 50, testCollection.count(new Document("scientist", "Darwin")));
+ assertEquals(50L, UpdateResult.class.cast(result).getModifiedCount(), "Number of records updated header should equal 50");
+ assertEquals(50, testCollection.countDocuments(new Document("scientist", "Darwin")), "Number of records with 'scientist' field = Darwin on must equal 50 after update");
}
@Test
public void testRemove() throws Exception {
// Prepare test
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
for (int i = 1; i <= 100; i++) {
String body = null;
try (Formatter f = new Formatter()) {
@@ -280,11 +285,11 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
}
template.requestBody("direct:insert", body);
}
- assertEquals(100L, testCollection.count());
+ assertEquals(100L, testCollection.countDocuments());
// Testing the update logic
Bson extraField = Filters.eq("extraField", true);
- assertEquals("Number of records with 'extraField' flag on must equal 50", 50L, testCollection.count(extraField));
+ assertEquals(50L, testCollection.countDocuments(extraField), "Number of records with 'extraField' flag on must equal 50");
Exchange resultExchange = template.request("direct:remove", new Processor() {
@Override
@@ -292,24 +297,24 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
exchange.getIn().setBody(extraField);
}
});
- Object result = resultExchange.getOut().getBody();
+ Object result = resultExchange.getMessage().getBody();
assertTrue(result instanceof DeleteResult);
- assertEquals("Number of records deleted header should equal 50", 50L, resultExchange.getOut().getHeader(MongoDbConstants.RECORDS_AFFECTED));
+ assertEquals(50L, resultExchange.getMessage().getHeader(MongoDbConstants.RECORDS_AFFECTED), "Number of records deleted header should equal 50");
- assertEquals("Number of records with 'extraField' flag on must be 0 after remove", 0, testCollection.count(extraField));
+ assertEquals(0, testCollection.countDocuments(extraField), "Number of records with 'extraField' flag on must be 0 after remove");
}
@Test
public void testAggregate() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
// Repeat ten times, obtain 10 batches of 100 results each time
List<Bson> aggregate = Arrays.asList(match(or(eq("scientist", "Darwin"), eq("scientist", "Einstein"))), group("$scientist", sum("count", 1)));
Object result = template.requestBody("direct:aggregate", aggregate);
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
@@ -319,15 +324,15 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
@Test
public void testDbStats() throws Exception {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
Object result = template.requestBody("direct:getDbStats", "irrelevantBody");
- assertTrue("Result is not of type Document", result instanceof Document);
- assertTrue("The result should contain keys", Document.class.cast(result).keySet().size() > 0);
+ assertTrue(result instanceof Document, "Result is not of type Document");
+ assertTrue(Document.class.cast(result).keySet().size() > 0, "The result should contain keys");
}
@Test
public void testColStats() throws Exception {
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
// Add some records to the collection (and do it via camel-mongodb)
for (int i = 1; i <= 100; i++) {
@@ -340,34 +345,34 @@ public class MongoDbOperationsTest extends AbstractMongoDbTest {
}
Object result = template.requestBody("direct:getColStats", "irrelevantBody");
- assertTrue("Result is not of type Document", result instanceof Document);
- assertTrue("The result should contain keys", Document.class.cast(result).keySet().size() > 0);
+ assertTrue(result instanceof Document, "Result is not of type Document");
+ assertTrue(Document.class.cast(result).keySet().size() > 0, "The result should contain keys");
}
@Test
public void testCommand() throws Exception {
// Call hostInfo, command working with every configuration
Object result = template.requestBody("direct:command", "{\"hostInfo\":\"1\"}");
- assertTrue("Result is not of type Document", result instanceof Document);
- assertTrue("The result should contain keys", Document.class.cast(result).keySet().size() > 0);
+ assertTrue(result instanceof Document, "Result is not of type Document");
+ assertTrue(Document.class.cast(result).keySet().size() > 0, "The result should contain keys");
}
@Test
public void testOperationHeader() throws Exception {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
// check that the count operation was invoked instead of the insert
// operation
Object result = template.requestBodyAndHeader("direct:insert", "irrelevantBody", MongoDbConstants.OPERATION_HEADER, "count");
- assertTrue("Result is not of type Long", result instanceof Long);
- assertEquals("Test collection should not contain any records", 0L, result);
+ assertTrue(result instanceof Long, "Result is not of type Long");
+ assertEquals(0L, result, "Test collection should not contain any records");
// check that the count operation was invoked instead of the insert
// operation
result = template.requestBodyAndHeader("direct:insert", "irrelevantBody", MongoDbConstants.OPERATION_HEADER, MongoDbOperation.count);
- assertTrue("Result is not of type Long", result instanceof Long);
- assertEquals("Test collection should not contain any records", 0L, result);
+ assertTrue(result instanceof Long, "Result is not of type Long");
+ assertEquals(0L, result, "Test collection should not contain any records");
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java
index 7f0b665..3eb088f 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbOutputTypeTest.java
@@ -25,16 +25,21 @@ import org.apache.camel.Exchange;
import org.apache.camel.builder.RouteBuilder;
import org.apache.commons.lang3.ObjectUtils;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+import static org.apache.camel.test.junit5.TestSupport.assertListSize;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class MongoDbOutputTypeTest extends AbstractMongoDbTest {
@Test
public void testFindAllDBCursor() {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
// Repeat ten times, obtain 10 batches of 100 results each time
int numToSkip = 0;
@@ -44,15 +49,15 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest {
headers.put(MongoDbConstants.NUM_TO_SKIP, numToSkip);
headers.put(MongoDbConstants.LIMIT, 100);
Object result = template.requestBodyAndHeaders("direct:findAllDBCursor", ObjectUtils.NULL, headers);
- assertTrue("Result is not of type MongoIterable", result instanceof MongoIterable);
+ assertTrue(result instanceof MongoIterable, "Result is not of type MongoIterable");
@SuppressWarnings("unchecked")
MongoIterable<Document> resultCursor = (MongoIterable<Document>)result;
// Ensure that all returned documents contain all fields
for (Document document : resultCursor) {
- assertNotNull("Document in returned list should contain all fields", document.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", document.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", document.get("fixedField"));
+ assertNotNull(document.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(document.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("fixedField"), "Document in returned list should contain all fields");
}
numToSkip = numToSkip + limit;
@@ -62,10 +67,10 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest {
@Test
public void testFindAllDocumentList() {
// Test that the collection has 0 documents in it
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
pumpDataIntoTestCollection();
Object result = template.requestBody("direct:findAllDocumentList", ObjectUtils.NULL);
- assertTrue("Result is not of type List", result instanceof List);
+ assertTrue(result instanceof List, "Result is not of type List");
@SuppressWarnings("unchecked")
List<Document> resultList = (List<Document>)result;
@@ -73,13 +78,13 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest {
// Ensure that all returned documents contain all fields
for (Document document : resultList) {
- assertNotNull("Document in returned list should contain all fields", document.get(MONGO_ID));
- assertNotNull("Document in returned list should contain all fields", document.get("scientist"));
- assertNotNull("Document in returned list should contain all fields", document.get("fixedField"));
+ assertNotNull(document.get(MONGO_ID), "Document in returned list should contain all fields");
+ assertNotNull(document.get("scientist"), "Document in returned list should contain all fields");
+ assertNotNull(document.get("fixedField"), "Document in returned list should contain all fields");
}
for (Exchange resultExchange : getMockEndpoint("mock:resultFindAll").getReceivedExchanges()) {
- assertEquals("Result total size header should equal 1000", 1000, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_TOTAL_SIZE));
+ assertEquals(1000, resultExchange.getIn().getHeader(MongoDbConstants.RESULT_TOTAL_SIZE), "Result total size header should equal 1000");
}
}
@@ -96,7 +101,7 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest {
template.getCamelContext().addRoutes(taillableRouteBuilder);
fail("Endpoint should not be initialized with a non compatible outputType");
} catch (Exception exception) {
- assertTrue("Exception is not of type IllegalArgumentException", exception.getCause() instanceof IllegalArgumentException);
+ assertTrue(exception.getCause() instanceof IllegalArgumentException, "Exception is not of type IllegalArgumentException");
}
}
@@ -113,7 +118,7 @@ public class MongoDbOutputTypeTest extends AbstractMongoDbTest {
template.getCamelContext().addRoutes(taillableRouteBuilder);
fail("Endpoint should not be initialized with a non compatible outputType");
} catch (Exception exception) {
- assertTrue("Exception is not of type IllegalArgumentException", exception.getCause() instanceof IllegalArgumentException);
+ assertTrue(exception.getCause() instanceof IllegalArgumentException, "Exception is not of type IllegalArgumentException");
}
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbReadPreferenceOptionTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbReadPreferenceOptionTest.java
index bfed84e..03b56a1 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbReadPreferenceOptionTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbReadPreferenceOptionTest.java
@@ -19,7 +19,11 @@ package org.apache.camel.component.mongodb;
import com.mongodb.ReadPreference;
import org.apache.camel.Endpoint;
import org.apache.camel.ResolveEndpointFailedException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class MongoDbReadPreferenceOptionTest extends AbstractMongoDbTest {
@@ -31,7 +35,7 @@ public class MongoDbReadPreferenceOptionTest extends AbstractMongoDbTest {
createMongoDbEndpoint("mongodb:myDb?database={{mongodb.testDb}}&readPreference=foo");
fail("Should have thrown exception");
} catch (ResolveEndpointFailedException refe) {
- assertTrue(refe.getMessage(), refe.getMessage().endsWith("Unknown parameters=[{readPreference=foo}]"));
+ assertTrue(refe.getMessage().endsWith("Unknown parameters=[{readPreference=foo}]"), refe.getMessage());
}
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbStopEndpointTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbStopEndpointTest.java
index e915b47..81b14b4 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbStopEndpointTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbStopEndpointTest.java
@@ -19,9 +19,10 @@ package org.apache.camel.component.mongodb;
import org.apache.camel.EndpointInject;
import org.apache.camel.builder.RouteBuilder;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static org.apache.camel.component.mongodb.MongoDbConstants.MONGO_ID;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class MongoDbStopEndpointTest extends AbstractMongoDbTest {
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumerTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumerTest.java
index 02af695..f6c09ef 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumerTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/MongoDbTailableCursorConsumerTest.java
@@ -24,8 +24,10 @@ import org.apache.camel.ServiceStatus;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
import org.bson.Document;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static com.mongodb.client.model.Filters.eq;
public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@@ -45,7 +47,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@Test
public void testNoRecords() throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
MockEndpoint mock = getMockEndpoint("mock:test");
mock.expectedMessageCount(0);
// DocumentBuilder.start().add("capped", true).add("size",
@@ -54,7 +56,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
CreateCollectionOptions collectionOptions = new CreateCollectionOptions().capped(true).sizeInBytes(1000000000).maxDocuments(1000);
db.createCollection(cappedTestCollectionName, collectionOptions);
cappedTestCollection = db.getCollection(cappedTestCollectionName, Document.class);
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
addTestRoutes();
context.getRouteController().startRoute("tailableCursorConsumer1");
@@ -66,7 +68,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@Test
public void testMultipleBursts() throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
MockEndpoint mock = getMockEndpoint("mock:test");
mock.expectedMessageCount(5000);
// DocumentBuilder.start().add("capped", true).add("size",
@@ -109,7 +111,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@Test
public void testHundredThousandRecords() throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
final MockEndpoint mock = getMockEndpoint("mock:test");
mock.expectedMessageCount(1000);
@@ -153,7 +155,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@Test
public void testPersistentTailTrack() throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
final MockEndpoint mock = getMockEndpoint("mock:test");
// drop the tracking collection
@@ -226,7 +228,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@Test
public void testPersistentTailTrackIncreasingDateField() throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
final MockEndpoint mock = getMockEndpoint("mock:test");
final Calendar startTimestamp = Calendar.getInstance();
@@ -302,7 +304,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
@Test
public void testCustomTailTrackLocation() throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
final MockEndpoint mock = getMockEndpoint("mock:test");
// get the custom tracking collection and drop it
@@ -378,7 +380,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
}
private void testThousandRecordsWithRouteId(String routeId) throws Exception {
- assertEquals(0, cappedTestCollection.count());
+ assertEquals(0, cappedTestCollection.countDocuments());
MockEndpoint mock = getMockEndpoint("mock:test");
mock.expectedMessageCount(1000);
@@ -390,7 +392,7 @@ public class MongoDbTailableCursorConsumerTest extends AbstractMongoDbTest {
for (int i = 0; i < 1000; i++) {
cappedTestCollection.insertOne(new Document("increasing", i).append("string", "value" + i));
}
- assertEquals(1000, cappedTestCollection.count());
+ assertEquals(1000, cappedTestCollection.countDocuments());
addTestRoutes();
context.getRouteController().startRoute(routeId);
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/meta/MongoDbMetaExtensionTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/meta/MongoDbMetaExtensionTest.java
index 51ee8a5..788a78f 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/meta/MongoDbMetaExtensionTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/meta/MongoDbMetaExtensionTest.java
@@ -27,17 +27,17 @@ import org.apache.camel.component.extension.MetaDataExtension;
import org.apache.camel.component.mongodb.AbstractMongoDbTest;
import org.apache.camel.component.mongodb.MongoDbComponent;
import org.bson.Document;
-import org.junit.Before;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
-public class MongoDbMetaExtensionTest extends AbstractMongoDbTest {
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
- private static final Logger LOGGER = LoggerFactory.getLogger(MongoDbMetaExtensionTest.class);
+public class MongoDbMetaExtensionTest extends AbstractMongoDbTest {
// We simulate the presence of an authenticated user
- @Before
+ @BeforeEach
public void createAuthorizationUser() {
super.createAuthorizationUser();
}
@@ -103,7 +103,7 @@ public class MongoDbMetaExtensionTest extends AbstractMongoDbTest {
assertNotNull(result.getPayload(JsonNode.class).get("type"));
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testMissingCollection() throws Exception {
// When
final String database = "test";
@@ -118,20 +118,26 @@ public class MongoDbMetaExtensionTest extends AbstractMongoDbTest {
parameters.put("password", PASSWORD);
// Then
- MetaDataExtension.MetaData result = component.getExtension(MetaDataExtension.class).get().meta(parameters).orElseThrow(IllegalArgumentException::new);
+ assertThrows(IllegalArgumentException.class, () -> {
+
+ component.getExtension(MetaDataExtension.class).get().meta(parameters).orElseThrow(IllegalArgumentException::new);
+ });
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testMissingParameters() throws Exception {
// When
MongoDbComponent component = this.getComponent();
// Given
Map<String, Object> parameters = new HashMap<>();
+
// Then
- MetaDataExtension.MetaData result = component.getExtension(MetaDataExtension.class).get().meta(parameters).orElseThrow(IllegalArgumentException::new);
+ assertThrows(IllegalArgumentException.class, () -> {
+ component.getExtension(MetaDataExtension.class).get().meta(parameters).orElseThrow(IllegalArgumentException::new);
+ });
}
- @Test(expected = UnsupportedOperationException.class)
+ @Test
public void testNotValidatedCollection() throws Exception {
// When
final String database = "test";
@@ -147,7 +153,9 @@ public class MongoDbMetaExtensionTest extends AbstractMongoDbTest {
parameters.put("password", PASSWORD);
// Then
- MetaDataExtension.MetaData result = component.getExtension(MetaDataExtension.class).get().meta(parameters).orElseThrow(UnsupportedOperationException::new);
+ assertThrows(UnsupportedOperationException.class, () -> {
+ component.getExtension(MetaDataExtension.class).get().meta(parameters).orElseThrow(UnsupportedOperationException::new);
+ });
}
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/processor/idempotent/MongoDbIdempotentRepositoryTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/processor/idempotent/MongoDbIdempotentRepositoryTest.java
index 1c6bbc5..4a5cce7 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/processor/idempotent/MongoDbIdempotentRepositoryTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/processor/idempotent/MongoDbIdempotentRepositoryTest.java
@@ -20,16 +20,19 @@ import java.util.UUID;
import org.apache.camel.component.mongodb.AbstractMongoDbTest;
import org.bson.Document;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class MongoDbIdempotentRepositoryTest extends AbstractMongoDbTest {
MongoDbIdempotentRepository repo;
- @Before
- @After
+ @BeforeEach
+ @AfterEach
public void clearDB() {
testCollection.deleteMany(new Document());
}
@@ -45,8 +48,8 @@ public class MongoDbIdempotentRepositoryTest extends AbstractMongoDbTest {
String randomUUIDString = UUID.randomUUID().toString();
boolean added = repo.add(randomUUIDString);
- assertEquals("Driver inserted document", 1, testCollection.count());
- assertTrue("Add ui returned true", added);
+ assertEquals(1, testCollection.countDocuments(), "Driver inserted document");
+ assertTrue(added, "Add ui returned true");
}
@Test
@@ -54,10 +57,10 @@ public class MongoDbIdempotentRepositoryTest extends AbstractMongoDbTest {
String randomUUIDString = UUID.randomUUID().toString();
repo.add(randomUUIDString);
- assertEquals(1, testCollection.count());
+ assertEquals(1, testCollection.countDocuments());
boolean found = repo.contains(randomUUIDString);
- assertTrue("Added uid was found", found);
+ assertTrue(found, "Added uid was found");
}
@Test
@@ -65,11 +68,11 @@ public class MongoDbIdempotentRepositoryTest extends AbstractMongoDbTest {
String randomUUIDString = UUID.randomUUID().toString();
repo.add(randomUUIDString);
- assertEquals(1, testCollection.count());
+ assertEquals(1, testCollection.countDocuments());
boolean removed = repo.remove(randomUUIDString);
- assertTrue("Added uid was removed correctly", removed);
- assertEquals(0, testCollection.count());
+ assertTrue(removed, "Added uid was removed correctly");
+ assertEquals(0, testCollection.countDocuments());
}
@Test
@@ -77,36 +80,36 @@ public class MongoDbIdempotentRepositoryTest extends AbstractMongoDbTest {
String randomUUIDString = UUID.randomUUID().toString();
repo.add(randomUUIDString);
- assertEquals(1, testCollection.count());
+ assertEquals(1, testCollection.countDocuments());
boolean added = repo.add(randomUUIDString);
- assertTrue("Duplicated entry was not added", !added);
- assertEquals(1, testCollection.count());
+ assertTrue(!added, "Duplicated entry was not added");
+ assertEquals(1, testCollection.countDocuments());
}
@Test
public void deleteMissingiIsFailse() throws Exception {
String randomUUIDString = UUID.randomUUID().toString();
- assertEquals(0, testCollection.count());
+ assertEquals(0, testCollection.countDocuments());
boolean removed = repo.remove(randomUUIDString);
- assertTrue("Non exisint uid returns false", !removed);
+ assertTrue(!removed, "Non exisint uid returns false");
}
@Test
public void containsMissingReturnsFalse() throws Exception {
String randomUUIDString = UUID.randomUUID().toString();
boolean found = repo.contains(randomUUIDString);
- assertTrue("Non existing item is not found", !found);
+ assertTrue(!found, "Non existing item is not found");
}
@Test
public void confirmAllwaysReturnsTrue() throws Exception {
String randomUUIDString = UUID.randomUUID().toString();
boolean found = repo.confirm(randomUUIDString);
- assertTrue("Confirm always returns true", found);
+ assertTrue(found, "Confirm always returns true");
found = repo.confirm(null);
- assertTrue("Confirm always returns true, even with null", found);
+ assertTrue(found, "Confirm always returns true, even with null");
}
}
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/verifier/MongoDbVerifierExtensionTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/verifier/MongoDbVerifierExtensionTest.java
index 010bc98..ac239ce 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/verifier/MongoDbVerifierExtensionTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/verifier/MongoDbVerifierExtensionTest.java
@@ -23,17 +23,16 @@ import org.apache.camel.Component;
import org.apache.camel.component.extension.ComponentVerifierExtension;
import org.apache.camel.component.mongodb.AbstractMongoDbTest;
import org.apache.camel.component.mongodb.MongoDbComponent;
-import org.junit.Before;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
-public class MongoDbVerifierExtensionTest extends AbstractMongoDbTest {
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
- private static final Logger LOGGER = LoggerFactory.getLogger(MongoDbVerifierExtensionTest.class);
+public class MongoDbVerifierExtensionTest extends AbstractMongoDbTest {
// We simulate the presence of an authenticated user
- @Before
+ @BeforeEach
public void createAuthorizationUser() {
super.createAuthorizationUser();
}