You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2014/11/30 08:54:31 UTC

[3/3] cayenne git commit: resource leak in unit tests

resource leak in unit tests


Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/cce22ae0
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/cce22ae0
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/cce22ae0

Branch: refs/heads/master
Commit: cce22ae065ce2437b69b73d6e7a2bd76272d0e3b
Parents: 56f0b5d
Author: aadamchik <aa...@apache.org>
Authored: Sun Nov 30 10:54:21 2014 +0300
Committer: aadamchik <aa...@apache.org>
Committed: Sun Nov 30 10:54:21 2014 +0300

----------------------------------------------------------------------
 .../cayenne/tools/DbImporterTaskTest.java       | 21 +++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/cce22ae0/cayenne-tools/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
----------------------------------------------------------------------
diff --git a/cayenne-tools/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java b/cayenne-tools/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
index 977b9be..5e284ac 100644
--- a/cayenne-tools/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
+++ b/cayenne-tools/src/test/java/org/apache/cayenne/tools/DbImporterTaskTest.java
@@ -187,16 +187,27 @@ public class DbImporterTaskTest {
 	private void prepareDatabase(String sqlFile, DbImportConfiguration dbImportConfiguration)
 			throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException,
 			URISyntaxException {
-		Class.forName(dbImportConfiguration.getDriver()).newInstance();
-		// Get a connection
-		Statement stmt = DriverManager.getConnection(dbImportConfiguration.getUrl()).createStatement();
 
 		String name = "dbimport/" + sqlFile + ".sql";
 		File file = distDir(name);
 		ResourceUtil.copyResourceToFile(getPackagePath() + "/" + name, file);
 
-		for (String sql : FileUtils.readFully(new FileReader(file)).split(";")) {
-			stmt.execute(sql);
+		Class.forName(dbImportConfiguration.getDriver()).newInstance();
+
+		Connection c = DriverManager.getConnection(dbImportConfiguration.getUrl());
+		try {
+
+			Statement stmt = c.createStatement();
+
+			try {
+				for (String sql : FileUtils.readFully(new FileReader(file)).split(";")) {
+					stmt.execute(sql);
+				}
+			} finally {
+				stmt.close();
+			}
+		} finally {
+			c.close();
 		}
 	}