From 3ee9e2ac076733298906b92965a27a532c1cd5f5 Mon Sep 17 00:00:00 2001 From: David Pursehouse Date: Fri, 22 Jan 2016 14:30:57 +0900 Subject: [PATCH] FileRepositoryBuilderTest: Use try-with-resource for auto-closeables Use try-with-resource to create instances of FileRepository and FileWriter. "resource" and "unused" warnings no longer occur, so remove the suppression annotations. Change-Id: I3ad58d4cc2d4c019cd8edda7cb401e9d9f3fb790 Signed-off-by: David Pursehouse --- .../file/FileRepositoryBuilderTest.java | 94 +++++++++---------- 1 file changed, 46 insertions(+), 48 deletions(-) diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java index dca356434..deffa04b5 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java @@ -72,7 +72,6 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase { .findGitDir(d).getGitDir()); } - @SuppressWarnings("unused") @Test public void emptyRepositoryFormatVersion() throws Exception { Repository r = createWorkRepository(); @@ -81,10 +80,11 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase { ConfigConstants.CONFIG_KEY_REPO_FORMAT_VERSION, ""); config.save(); - new FileRepository(r.getDirectory()); + try (FileRepository repo = new FileRepository(r.getDirectory())) { + // Unused + } } - @SuppressWarnings("unused") @Test public void invalidRepositoryFormatVersion() throws Exception { Repository r = createWorkRepository(); @@ -93,15 +93,13 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase { ConfigConstants.CONFIG_KEY_REPO_FORMAT_VERSION, "notanumber"); config.save(); - try { - new FileRepository(r.getDirectory()); + try (FileRepository repo = new FileRepository(r.getDirectory())) { fail("IllegalArgumentException not thrown"); } catch (IllegalArgumentException e) { assertNotNull(e.getMessage()); } } - @SuppressWarnings("unused") @Test public void unknownRepositoryFormatVersion() throws Exception { Repository r = createWorkRepository(); @@ -110,75 +108,75 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase { ConfigConstants.CONFIG_KEY_REPO_FORMAT_VERSION, 999999); config.save(); - try { - new FileRepository(r.getDirectory()); + try (FileRepository repo = new FileRepository(r.getDirectory())) { fail("IOException not thrown"); } catch (IOException e) { assertNotNull(e.getMessage()); } } - @SuppressWarnings("resource" /* java 7 */) @Test public void absoluteGitDirRef() throws Exception { Repository repo1 = createWorkRepository(); File dir = createTempDirectory("dir"); File dotGit = new File(dir, Constants.DOT_GIT); - new FileWriter(dotGit).append( - "gitdir: " + repo1.getDirectory().getAbsolutePath()).close(); - FileRepositoryBuilder builder = new FileRepositoryBuilder(); + try (FileWriter writer = new FileWriter(dotGit)) { + writer.append("gitdir: " + repo1.getDirectory().getAbsolutePath()).close(); + FileRepositoryBuilder builder = new FileRepositoryBuilder(); - builder.setWorkTree(dir); - builder.setMustExist(true); - Repository repo2 = builder.build(); + builder.setWorkTree(dir); + builder.setMustExist(true); + Repository repo2 = builder.build(); - assertEquals(repo1.getDirectory().getAbsolutePath(), repo2 - .getDirectory().getAbsolutePath()); - assertEquals(dir, repo2.getWorkTree()); + assertEquals(repo1.getDirectory().getAbsolutePath(), repo2 + .getDirectory().getAbsolutePath()); + assertEquals(dir, repo2.getWorkTree()); + } } - @SuppressWarnings("resource" /* java 7 */) @Test public void relativeGitDirRef() throws Exception { Repository repo1 = createWorkRepository(); File dir = new File(repo1.getWorkTree(), "dir"); assertTrue(dir.mkdir()); File dotGit = new File(dir, Constants.DOT_GIT); - new FileWriter(dotGit).append("gitdir: ../" + Constants.DOT_GIT) - .close(); - - FileRepositoryBuilder builder = new FileRepositoryBuilder(); - builder.setWorkTree(dir); - builder.setMustExist(true); - Repository repo2 = builder.build(); - - // The tmp directory may be a symlink so the actual path - // may not - assertEquals(repo1.getDirectory().getCanonicalPath(), repo2 - .getDirectory().getCanonicalPath()); - assertEquals(dir, repo2.getWorkTree()); + try (FileWriter writer = new FileWriter(dotGit)) { + writer.append("gitdir: ../" + Constants.DOT_GIT).close(); + + FileRepositoryBuilder builder = new FileRepositoryBuilder(); + builder.setWorkTree(dir); + builder.setMustExist(true); + Repository repo2 = builder.build(); + + // The tmp directory may be a symlink so the actual path + // may not + assertEquals(repo1.getDirectory().getCanonicalPath(), repo2 + .getDirectory().getCanonicalPath()); + assertEquals(dir, repo2.getWorkTree()); + } } - @SuppressWarnings("resource" /* java 7 */) @Test public void scanWithGitDirRef() throws Exception { Repository repo1 = createWorkRepository(); File dir = createTempDirectory("dir"); File dotGit = new File(dir, Constants.DOT_GIT); - new FileWriter(dotGit).append( - "gitdir: " + repo1.getDirectory().getAbsolutePath()).close(); - FileRepositoryBuilder builder = new FileRepositoryBuilder(); - - builder.setWorkTree(dir); - builder.findGitDir(dir); - assertEquals(repo1.getDirectory().getAbsolutePath(), builder - .getGitDir().getAbsolutePath()); - builder.setMustExist(true); - Repository repo2 = builder.build(); - - // The tmp directory may be a symlink - assertEquals(repo1.getDirectory().getCanonicalPath(), repo2 - .getDirectory().getCanonicalPath()); - assertEquals(dir, repo2.getWorkTree()); + try (FileWriter writer = new FileWriter(dotGit)) { + writer.append( + "gitdir: " + repo1.getDirectory().getAbsolutePath()).close(); + FileRepositoryBuilder builder = new FileRepositoryBuilder(); + + builder.setWorkTree(dir); + builder.findGitDir(dir); + assertEquals(repo1.getDirectory().getAbsolutePath(), builder + .getGitDir().getAbsolutePath()); + builder.setMustExist(true); + Repository repo2 = builder.build(); + + // The tmp directory may be a symlink + assertEquals(repo1.getDirectory().getCanonicalPath(), repo2 + .getDirectory().getCanonicalPath()); + assertEquals(dir, repo2.getWorkTree()); + } } }