You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2020/05/15 21:04:04 UTC

[logging-log4j2] branch release-2.x updated: Fix possible resource leaks in MongoDB tests.

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch release-2.x
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git


The following commit(s) were added to refs/heads/release-2.x by this push:
     new 010910d  Fix possible resource leaks in MongoDB tests.
010910d is described below

commit 010910d8b6ee24effd1b5f86ddd32742086a8f57
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Fri May 15 17:03:58 2020 -0400

    Fix possible resource leaks in MongoDB tests.
---
 .../logging/log4j/mongodb2/MongoDbAuthFailureTest.java   |  8 ++++++--
 .../apache/logging/log4j/mongodb2/MongoDbCappedTest.java | 16 +++++++++++-----
 .../logging/log4j/mongodb2/MongoDbMapMessageTest.java    | 16 ++++++++++------
 .../org/apache/logging/log4j/mongodb2/MongoDbTest.java   | 12 ++++++++----
 4 files changed, 35 insertions(+), 17 deletions(-)

diff --git a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbAuthFailureTest.java b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbAuthFailureTest.java
index c39fc8d..6e921cc 100644
--- a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbAuthFailureTest.java
+++ b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbAuthFailureTest.java
@@ -32,6 +32,7 @@ import org.junit.rules.RuleChain;
 
 import com.mongodb.DB;
 import com.mongodb.DBCollection;
+import com.mongodb.DBCursor;
 import com.mongodb.MongoClient;
 
 /**
@@ -48,7 +49,8 @@ public class MongoDbAuthFailureTest {
     private static final AvailablePortSystemPropertyTestRule mongoDbPortTestRule = AvailablePortSystemPropertyTestRule
             .create(TestConstants.SYS_PROP_NAME_PORT);
 
-    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(), LoggingTarget.NULL);
+    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(),
+            LoggingTarget.NULL);
 
     @ClassRule
     public static RuleChain ruleChain = RuleChainFactory.create(mongoDbPortTestRule, mongoDbTestRule,
@@ -64,7 +66,9 @@ public class MongoDbAuthFailureTest {
             Assert.assertNotNull(database);
             final DBCollection collection = database.getCollection("applog");
             Assert.assertNotNull(collection);
-            Assert.assertFalse(collection.find().hasNext());
+            try (DBCursor cursor = collection.find()) {
+                Assert.assertFalse(cursor.hasNext());
+            }
         } finally {
             mongoClient.close();
         }
diff --git a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbCappedTest.java b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbCappedTest.java
index c6362b3..7b900ae 100644
--- a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbCappedTest.java
+++ b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbCappedTest.java
@@ -31,6 +31,7 @@ import org.junit.rules.RuleChain;
 
 import com.mongodb.DB;
 import com.mongodb.DBCollection;
+import com.mongodb.DBCursor;
 import com.mongodb.DBObject;
 import com.mongodb.MongoClient;
 
@@ -45,7 +46,8 @@ public class MongoDbCappedTest {
     private static final AvailablePortSystemPropertyTestRule mongoDbPortTestRule = AvailablePortSystemPropertyTestRule
             .create(TestConstants.SYS_PROP_NAME_PORT);
 
-    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(), LoggingTarget.NULL);
+    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(),
+            LoggingTarget.NULL);
 
     @ClassRule
     public static RuleChain ruleChain = RuleChainFactory.create(mongoDbPortTestRule, mongoDbTestRule,
@@ -61,10 +63,14 @@ public class MongoDbCappedTest {
             Assert.assertNotNull(database);
             final DBCollection collection = database.getCollection("applog");
             Assert.assertNotNull(collection);
-            Assert.assertTrue(collection.find().hasNext());
-            final DBObject first = collection.find().next();
-            Assert.assertNotNull(first);
-            Assert.assertEquals(first.toMap().toString(), "Hello log", first.get("message"));
+            try (DBCursor cursor = collection.find()) {
+                Assert.assertTrue(cursor.hasNext());
+            }
+            try (DBCursor cursor = collection.find()) {
+                final DBObject first = cursor.next();
+                Assert.assertNotNull(first);
+                Assert.assertEquals(first.toMap().toString(), "Hello log", first.get("message"));
+            }
         } finally {
             mongoClient.close();
         }
diff --git a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbMapMessageTest.java b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbMapMessageTest.java
index cbd209a..983db0e 100644
--- a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbMapMessageTest.java
+++ b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbMapMessageTest.java
@@ -32,6 +32,7 @@ import org.junit.rules.RuleChain;
 
 import com.mongodb.DB;
 import com.mongodb.DBCollection;
+import com.mongodb.DBCursor;
 import com.mongodb.DBObject;
 import com.mongodb.MongoClient;
 
@@ -46,7 +47,8 @@ public class MongoDbMapMessageTest {
     private static final AvailablePortSystemPropertyTestRule mongoDbPortTestRule = AvailablePortSystemPropertyTestRule
             .create(TestConstants.SYS_PROP_NAME_PORT);
 
-    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(), LoggingTarget.NULL);
+    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(),
+            LoggingTarget.NULL);
 
     @ClassRule
     public static RuleChain ruleChain = RuleChainFactory.create(mongoDbPortTestRule, mongoDbTestRule,
@@ -66,11 +68,13 @@ public class MongoDbMapMessageTest {
             Assert.assertNotNull(database);
             final DBCollection collection = database.getCollection("applog");
             Assert.assertNotNull(collection);
-            final DBObject first = collection.find().next();
-            Assert.assertNotNull(first);
-            final String firstMapString = first.toMap().toString();
-            Assert.assertEquals(firstMapString, "SomeValue", first.get("SomeName"));
-            Assert.assertEquals(firstMapString, Integer.valueOf(1), first.get("SomeInt"));
+            try (DBCursor cursor = collection.find()) {
+                final DBObject first = cursor.next();
+                Assert.assertNotNull(first);
+                final String firstMapString = first.toMap().toString();
+                Assert.assertEquals(firstMapString, "SomeValue", first.get("SomeName"));
+                Assert.assertEquals(firstMapString, Integer.valueOf(1), first.get("SomeInt"));
+            }
         } finally {
             mongoClient.close();
         }
diff --git a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTest.java b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTest.java
index 3e791c5..e35fa68 100644
--- a/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTest.java
+++ b/log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTest.java
@@ -31,6 +31,7 @@ import org.junit.rules.RuleChain;
 
 import com.mongodb.DB;
 import com.mongodb.DBCollection;
+import com.mongodb.DBCursor;
 import com.mongodb.DBObject;
 import com.mongodb.MongoClient;
 
@@ -45,7 +46,8 @@ public class MongoDbTest {
     private static final AvailablePortSystemPropertyTestRule mongoDbPortTestRule = AvailablePortSystemPropertyTestRule
             .create(TestConstants.SYS_PROP_NAME_PORT);
 
-    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(), LoggingTarget.NULL);
+    private static final MongoDbTestRule mongoDbTestRule = new MongoDbTestRule(mongoDbPortTestRule.getName(),
+            LoggingTarget.NULL);
 
     @ClassRule
     public static RuleChain ruleChain = RuleChainFactory.create(mongoDbPortTestRule, mongoDbTestRule,
@@ -61,9 +63,11 @@ public class MongoDbTest {
             Assert.assertNotNull(database);
             final DBCollection collection = database.getCollection("applog");
             Assert.assertNotNull(collection);
-            final DBObject first = collection.find().next();
-            Assert.assertNotNull(first);
-            Assert.assertEquals(first.toMap().toString(), "Hello log", first.get("message"));
+            try (DBCursor cursor = collection.find()) {
+                final DBObject first = cursor.next();
+                Assert.assertNotNull(first);
+                Assert.assertEquals(first.toMap().toString(), "Hello log", first.get("message"));
+            }
         } finally {
             mongoClient.close();
         }