summaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.test
diff options
context:
space:
mode:
authorDavid Pursehouse <david.pursehouse@gmail.com>2018-03-13 11:44:23 +0900
committerMatthias Sohn <matthias.sohn@sap.com>2018-03-13 22:16:06 +0100
commit5c70be00856d5375485e6f062b6e1e09a606601f (patch)
tree55726d1e2a1c52d75460a0a4336d487238037ba6 /org.eclipse.jgit.test
parente23b09ad6efc35f6574cfefd4467ad20e5212ff2 (diff)
downloadjgit-5c70be00856d5375485e6f062b6e1e09a606601f.tar.gz
jgit-5c70be00856d5375485e6f062b6e1e09a606601f.zip
Open auto-closeable resources in try-with-resource
When an auto-closeable resources is not opened in try-with-resource, the warning "should be managed by try-with-resource" is emitted by Eclipse. Fix the ones that can be silenced simply by moving the declaration of the variable into a try-with-resource. In cases where we explicitly call the close() method, for example in tests where we are testing specific behavior caused by the close(), suppress the warning. Leave the ones that will require more significant refcactoring to fix. They can be done in separate commits that can be reviewed and tested in isolation. Change-Id: I9682cd20fb15167d3c7f9027cecdc82bc50b83c4 Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
Diffstat (limited to 'org.eclipse.jgit.test')
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/api/ResetCommandTest.java54
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileTest.java79
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackWriterTest.java19
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/T0003_BasicTest.java87
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/UnpackedObjectTest.java130
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/WindowCacheGetTest.java7
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RacyGitTests.java5
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefTest.java10
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryCacheTest.java35
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/SquashCommitMsgTest.java7
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/merge/ResolveMergerTest.java26
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcErrorTest.java13
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcTest.java13
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchErrorTest.java13
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchTest.java13
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleAddTest.java35
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleSyncTest.java28
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleUpdateTest.java8
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/NetRCTest.java8
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PackParserTest.java10
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java59
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/filter/NotTreeFilterTest.java13
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/util/TemporaryBufferTest.java55
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/AutoCRLFOutputStreamTest.java47
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/UnionInputStreamTest.java48
25 files changed, 372 insertions, 450 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/ResetCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/ResetCommandTest.java
index ba51881ffd..8f56a9270e 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/ResetCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/ResetCommandTest.java
@@ -100,39 +100,39 @@ public class ResetCommandTest extends RepositoryTestCase {
File nestedFile = new File(dir, "b.txt");
FileUtils.createNewFile(nestedFile);
- PrintWriter nesterFileWriter = new PrintWriter(nestedFile);
- nesterFileWriter.print("content");
- nesterFileWriter.flush();
-
- // create file
- indexFile = new File(db.getWorkTree(), "a.txt");
- FileUtils.createNewFile(indexFile);
- PrintWriter writer = new PrintWriter(indexFile);
- writer.print("content");
- writer.flush();
-
- // add file and commit it
- git.add().addFilepattern("dir").addFilepattern("a.txt").call();
- secondCommit = git.commit().setMessage("adding a.txt and dir/b.txt")
- .call();
-
- prestage = DirCache.read(db.getIndexFile(), db.getFS()).getEntry(
- indexFile.getName());
-
- // modify file and add to index
- writer.print("new content");
- writer.close();
- nesterFileWriter.print("new content");
- nesterFileWriter.close();
+ try (PrintWriter nestedFileWriter = new PrintWriter(nestedFile)) {
+ nestedFileWriter.print("content");
+ nestedFileWriter.flush();
+
+ // create file
+ indexFile = new File(db.getWorkTree(), "a.txt");
+ FileUtils.createNewFile(indexFile);
+ try (PrintWriter writer = new PrintWriter(indexFile)) {
+ writer.print("content");
+ writer.flush();
+
+ // add file and commit it
+ git.add().addFilepattern("dir").addFilepattern("a.txt").call();
+ secondCommit = git.commit()
+ .setMessage("adding a.txt and dir/b.txt").call();
+
+ prestage = DirCache.read(db.getIndexFile(), db.getFS())
+ .getEntry(indexFile.getName());
+
+ // modify file and add to index
+ writer.print("new content");
+ }
+ nestedFileWriter.print("new content");
+ }
git.add().addFilepattern("a.txt").addFilepattern("dir").call();
// create a file not added to the index
untrackedFile = new File(db.getWorkTree(),
"notAddedToIndex.txt");
FileUtils.createNewFile(untrackedFile);
- PrintWriter writer2 = new PrintWriter(untrackedFile);
- writer2.print("content");
- writer2.close();
+ try (PrintWriter writer2 = new PrintWriter(untrackedFile)) {
+ writer2.print("content");
+ }
}
@Test
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileTest.java
index 91bd523975..128c1edde1 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackFileTest.java
@@ -146,15 +146,15 @@ public class PackFileTest extends LocalDiskRepositoryTestCase {
assertFalse("is not large", ol.isLarge());
assertTrue("same content", Arrays.equals(data, ol.getCachedBytes()));
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(type, in.getType());
- assertEquals(data.length, in.getSize());
- byte[] data2 = new byte[data.length];
- IO.readFully(in, data2, 0, data.length);
- assertTrue("same content", Arrays.equals(data2, data));
- assertEquals("stream at EOF", -1, in.read());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(type, in.getType());
+ assertEquals(data.length, in.getSize());
+ byte[] data2 = new byte[data.length];
+ IO.readFully(in, data2, 0, data.length);
+ assertTrue("same content", Arrays.equals(data2, data));
+ assertEquals("stream at EOF", -1, in.read());
+ }
}
@Test
@@ -180,15 +180,15 @@ public class PackFileTest extends LocalDiskRepositoryTestCase {
.getMessage());
}
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(type, in.getType());
- assertEquals(data.length, in.getSize());
- byte[] data2 = new byte[data.length];
- IO.readFully(in, data2, 0, data.length);
- assertTrue("same content", Arrays.equals(data2, data));
- assertEquals("stream at EOF", -1, in.read());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(type, in.getType());
+ assertEquals(data.length, in.getSize());
+ byte[] data2 = new byte[data.length];
+ IO.readFully(in, data2, 0, data.length);
+ assertTrue("same content", Arrays.equals(data2, data));
+ assertEquals("stream at EOF", -1, in.read());
+ }
}
@Test
@@ -239,15 +239,15 @@ public class PackFileTest extends LocalDiskRepositoryTestCase {
assertNotNull(ol.getCachedBytes());
assertArrayEquals(data3, ol.getCachedBytes());
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(Constants.OBJ_BLOB, in.getType());
- assertEquals(data3.length, in.getSize());
- byte[] act = new byte[data3.length];
- IO.readFully(in, act, 0, data3.length);
- assertTrue("same content", Arrays.equals(act, data3));
- assertEquals("stream at EOF", -1, in.read());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(Constants.OBJ_BLOB, in.getType());
+ assertEquals(data3.length, in.getSize());
+ byte[] act = new byte[data3.length];
+ IO.readFully(in, act, 0, data3.length);
+ assertTrue("same content", Arrays.equals(act, data3));
+ assertEquals("stream at EOF", -1, in.read());
+ }
}
}
@@ -282,22 +282,16 @@ public class PackFileTest extends LocalDiskRepositoryTestCase {
File packName = new File(dir, idA.name() + ".pack");
File idxName = new File(dir, idA.name() + ".idx");
- FileOutputStream f = new FileOutputStream(packName);
- try {
+ try (FileOutputStream f = new FileOutputStream(packName)) {
f.write(pack.toByteArray());
- } finally {
- f.close();
}
- f = new FileOutputStream(idxName);
- try {
+ try (FileOutputStream f = new FileOutputStream(idxName)) {
List<PackedObjectInfo> list = new ArrayList<>();
list.add(a);
list.add(b);
Collections.sort(list);
new PackIndexWriterV1(f).write(list, footer);
- } finally {
- f.close();
}
PackFile packFile = new PackFile(packName, PackExt.INDEX.getBit());
@@ -321,16 +315,17 @@ public class PackFileTest extends LocalDiskRepositoryTestCase {
assertTrue("has blob", wc.has(id));
ObjectLoader ol = wc.open(id);
- ObjectStream in = ol.openStream();
- assertTrue(in instanceof ObjectStream.SmallStream);
- assertEquals(300, in.available());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertTrue(in instanceof ObjectStream.SmallStream);
+ assertEquals(300, in.available());
+ }
wc.setStreamFileThreshold(299);
ol = wc.open(id);
- in = ol.openStream();
- assertTrue(in instanceof ObjectStream.Filter);
- assertEquals(1, in.available());
+ try (ObjectStream in = ol.openStream()) {
+ assertTrue(in instanceof ObjectStream.Filter);
+ assertEquals(1, in.available());
+ }
}
private static byte[] clone(int first, byte[] base) {
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackWriterTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackWriterTest.java
index 379432ddbb..3711f83656 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackWriterTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/PackWriterTest.java
@@ -515,11 +515,8 @@ public class PackWriterTest extends SampleDataRepositoryTestCase {
// Validate that an index written by PackWriter is the same.
final File idx2File = new File(indexFile.getAbsolutePath() + ".2");
- final FileOutputStream is = new FileOutputStream(idx2File);
- try {
+ try (FileOutputStream is = new FileOutputStream(idx2File)) {
writer.writeIndex(is);
- } finally {
- is.close();
}
final PackIndex idx2 = PackIndex.open(idx2File);
assertTrue(idx2 instanceof PackIndexV2);
@@ -715,14 +712,14 @@ public class PackWriterTest extends SampleDataRepositoryTestCase {
String id = pw.computeName().getName();
File packdir = repo.getObjectDatabase().getPackDirectory();
File packFile = new File(packdir, "pack-" + id + ".pack");
- FileOutputStream packOS = new FileOutputStream(packFile);
- pw.writePack(NullProgressMonitor.INSTANCE,
- NullProgressMonitor.INSTANCE, packOS);
- packOS.close();
+ try (FileOutputStream packOS = new FileOutputStream(packFile)) {
+ pw.writePack(NullProgressMonitor.INSTANCE,
+ NullProgressMonitor.INSTANCE, packOS);
+ }
File idxFile = new File(packdir, "pack-" + id + ".idx");
- FileOutputStream idxOS = new FileOutputStream(idxFile);
- pw.writeIndex(idxOS);
- idxOS.close();
+ try (FileOutputStream idxOS = new FileOutputStream(idxFile)) {
+ pw.writeIndex(idxOS);
+ }
return PackIndex.open(idxFile);
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/T0003_BasicTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/T0003_BasicTest.java
index b5d6485604..91255007ef 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/T0003_BasicTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/T0003_BasicTest.java
@@ -137,10 +137,10 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
@Test
public void test000_openrepo_default_gitDirSet() throws IOException {
File repo1Parent = new File(trash.getParentFile(), "r1");
- Repository repo1initial = new FileRepository(new File(repo1Parent,
- Constants.DOT_GIT));
- repo1initial.create();
- repo1initial.close();
+ try (Repository repo1initial = new FileRepository(
+ new File(repo1Parent, Constants.DOT_GIT))) {
+ repo1initial.create();
+ }
File theDir = new File(repo1Parent, Constants.DOT_GIT);
FileRepository r = (FileRepository) new FileRepositoryBuilder()
@@ -162,10 +162,10 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
public void test000_openrepo_default_gitDirAndWorkTreeSet()
throws IOException {
File repo1Parent = new File(trash.getParentFile(), "r1");
- Repository repo1initial = new FileRepository(new File(repo1Parent,
- Constants.DOT_GIT));
- repo1initial.create();
- repo1initial.close();
+ try (Repository repo1initial = new FileRepository(
+ new File(repo1Parent, Constants.DOT_GIT))) {
+ repo1initial.create();
+ }
File theDir = new File(repo1Parent, Constants.DOT_GIT);
FileRepository r = (FileRepository) new FileRepositoryBuilder()
@@ -187,10 +187,10 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
@Test
public void test000_openrepo_default_workDirSet() throws IOException {
File repo1Parent = new File(trash.getParentFile(), "r1");
- Repository repo1initial = new FileRepository(new File(repo1Parent,
- Constants.DOT_GIT));
- repo1initial.create();
- repo1initial.close();
+ try (Repository repo1initial = new FileRepository(
+ new File(repo1Parent, Constants.DOT_GIT))) {
+ repo1initial.create();
+ }
File theDir = new File(repo1Parent, Constants.DOT_GIT);
FileRepository r = (FileRepository) new FileRepositoryBuilder()
@@ -213,13 +213,13 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
File repo1Parent = new File(trash.getParentFile(), "r1");
File workdir = new File(trash.getParentFile(), "rw");
FileUtils.mkdir(workdir);
- FileRepository repo1initial = new FileRepository(new File(repo1Parent,
- Constants.DOT_GIT));
- repo1initial.create();
- final FileBasedConfig cfg = repo1initial.getConfig();
- cfg.setString("core", null, "worktree", workdir.getAbsolutePath());
- cfg.save();
- repo1initial.close();
+ try (FileRepository repo1initial = new FileRepository(
+ new File(repo1Parent, Constants.DOT_GIT))) {
+ repo1initial.create();
+ final FileBasedConfig cfg = repo1initial.getConfig();
+ cfg.setString("core", null, "worktree", workdir.getAbsolutePath());
+ cfg.save();
+ }
File theDir = new File(repo1Parent, Constants.DOT_GIT);
FileRepository r = (FileRepository) new FileRepositoryBuilder()
@@ -242,13 +242,13 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
File repo1Parent = new File(trash.getParentFile(), "r1");
File workdir = new File(trash.getParentFile(), "rw");
FileUtils.mkdir(workdir);
- FileRepository repo1initial = new FileRepository(new File(repo1Parent,
- Constants.DOT_GIT));
- repo1initial.create();
- final FileBasedConfig cfg = repo1initial.getConfig();
- cfg.setString("core", null, "worktree", "../../rw");
- cfg.save();
- repo1initial.close();
+ try (FileRepository repo1initial = new FileRepository(
+ new File(repo1Parent, Constants.DOT_GIT))) {
+ repo1initial.create();
+ final FileBasedConfig cfg = repo1initial.getConfig();
+ cfg.setString("core", null, "worktree", "../../rw");
+ cfg.save();
+ }
File theDir = new File(repo1Parent, Constants.DOT_GIT);
FileRepository r = (FileRepository) new FileRepositoryBuilder()
@@ -273,26 +273,24 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
File indexFile = new File(trash, "idx");
File objDir = new File(trash, "../obj");
File altObjDir = db.getObjectDatabase().getDirectory();
- Repository repo1initial = new FileRepository(new File(repo1Parent,
- Constants.DOT_GIT));
- repo1initial.create();
- repo1initial.close();
+ try (Repository repo1initial = new FileRepository(
+ new File(repo1Parent, Constants.DOT_GIT))) {
+ repo1initial.create();
+ }
File theDir = new File(repo1Parent, Constants.DOT_GIT);
- FileRepository r = (FileRepository) new FileRepositoryBuilder() //
+ try (FileRepository r = (FileRepository) new FileRepositoryBuilder() //
.setGitDir(theDir).setObjectDirectory(objDir) //
.addAlternateObjectDirectory(altObjDir) //
.setIndexFile(indexFile) //
- .build();
- assertEqualsPath(theDir, r.getDirectory());
- assertEqualsPath(theDir.getParentFile(), r.getWorkTree());
- assertEqualsPath(indexFile, r.getIndexFile());
- assertEqualsPath(objDir, r.getObjectDatabase().getDirectory());
- assertNotNull(r.open(ObjectId
- .fromString("6db9c2ebf75590eef973081736730a9ea169a0c4")));
- // Must close or the default repo pack files created by this test gets
- // locked via the alternate object directories on Windows.
- r.close();
+ .build()) {
+ assertEqualsPath(theDir, r.getDirectory());
+ assertEqualsPath(theDir.getParentFile(), r.getWorkTree());
+ assertEqualsPath(indexFile, r.getIndexFile());
+ assertEqualsPath(objDir, r.getObjectDatabase().getDirectory());
+ assertNotNull(r.open(ObjectId
+ .fromString("6db9c2ebf75590eef973081736730a9ea169a0c4")));
+ }
}
protected void assertEqualsPath(File expected, File actual)
@@ -417,14 +415,11 @@ public class T0003_BasicTest extends SampleDataRepositoryTestCase {
// Verify the commit we just wrote is in the correct format.
ObjectDatabase odb = db.getObjectDatabase();
assertTrue("is ObjectDirectory", odb instanceof ObjectDirectory);
- final XInputStream xis = new XInputStream(new FileInputStream(
- ((ObjectDirectory) odb).fileFor(cmtid)));
- try {
+ try (XInputStream xis = new XInputStream(
+ new FileInputStream(((ObjectDirectory) odb).fileFor(cmtid)))) {
assertEquals(0x78, xis.readUInt8());
assertEquals(0x9c, xis.readUInt8());
assertEquals(0, 0x789c % 31);
- } finally {
- xis.close();
}
// Verify we can read it.
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/UnpackedObjectTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/UnpackedObjectTest.java
index c5ab766838..98ff04e15e 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/UnpackedObjectTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/UnpackedObjectTest.java
@@ -130,15 +130,15 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
assertFalse("is not large", ol.isLarge());
assertTrue("same content", Arrays.equals(data, ol.getCachedBytes()));
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(type, in.getType());
- assertEquals(data.length, in.getSize());
- byte[] data2 = new byte[data.length];
- IO.readFully(in, data2, 0, data.length);
- assertTrue("same content", Arrays.equals(data2, data));
- assertEquals("stream at EOF", -1, in.read());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(type, in.getType());
+ assertEquals(data.length, in.getSize());
+ byte[] data2 = new byte[data.length];
+ IO.readFully(in, data2, 0, data.length);
+ assertTrue("same content", Arrays.equals(data2, data));
+ assertEquals("stream at EOF", -1, in.read());
+ }
}
@Test
@@ -150,11 +150,8 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
ObjectLoader ol;
{
- FileInputStream fs = new FileInputStream(path(id));
- try {
+ try (FileInputStream fs = new FileInputStream(path(id))) {
ol = UnpackedObject.open(fs, path(id), id, wc);
- } finally {
- fs.close();
}
}
@@ -171,15 +168,15 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
.getMessage());
}
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(type, in.getType());
- assertEquals(data.length, in.getSize());
- byte[] data2 = new byte[data.length];
- IO.readFully(in, data2, 0, data.length);
- assertTrue("same content", Arrays.equals(data2, data));
- assertEquals("stream at EOF", -1, in.read());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(type, in.getType());
+ assertEquals(data.length, in.getSize());
+ byte[] data2 = new byte[data.length];
+ IO.readFully(in, data2, 0, data.length);
+ assertTrue("same content", Arrays.equals(data2, data));
+ assertEquals("stream at EOF", -1, in.read());
+ }
}
@Test
@@ -316,23 +313,13 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
write(id, gz);
ObjectLoader ol;
- {
- FileInputStream fs = new FileInputStream(path(id));
- try {
- ol = UnpackedObject.open(fs, path(id), id, wc);
- } finally {
- fs.close();
- }
+ try (FileInputStream fs = new FileInputStream(path(id))) {
+ ol = UnpackedObject.open(fs, path(id), id, wc);
}
- try {
- byte[] tmp = new byte[data.length];
- InputStream in = ol.openStream();
- try {
- IO.readFully(in, tmp, 0, tmp.length);
- } finally {
- in.close();
- }
+ byte[] tmp = new byte[data.length];
+ try (InputStream in = ol.openStream()) {
+ IO.readFully(in, tmp, 0, tmp.length);
fail("Did not throw CorruptObjectException");
} catch (CorruptObjectException coe) {
assertEquals(MessageFormat.format(JGitText.get().objectIsCorrupt,
@@ -354,16 +341,12 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
write(id, tr);
ObjectLoader ol;
- {
- FileInputStream fs = new FileInputStream(path(id));
- try {
- ol = UnpackedObject.open(fs, path(id), id, wc);
- } finally {
- fs.close();
- }
+ try (FileInputStream fs = new FileInputStream(path(id))) {
+ ol = UnpackedObject.open(fs, path(id), id, wc);
}
byte[] tmp = new byte[data.length];
+ @SuppressWarnings("resource") // We are testing that the close() method throws
InputStream in = ol.openStream();
IO.readFully(in, tmp, 0, tmp.length);
try {
@@ -389,16 +372,12 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
write(id, tr);
ObjectLoader ol;
- {
- FileInputStream fs = new FileInputStream(path(id));
- try {
- ol = UnpackedObject.open(fs, path(id), id, wc);
- } finally {
- fs.close();
- }
+ try (FileInputStream fs = new FileInputStream(path(id))) {
+ ol = UnpackedObject.open(fs, path(id), id, wc);
}
byte[] tmp = new byte[data.length];
+ @SuppressWarnings("resource") // We are testing that the close() method throws
InputStream in = ol.openStream();
IO.readFully(in, tmp, 0, tmp.length);
try {
@@ -426,14 +405,15 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
assertFalse("is not large", ol.isLarge());
assertTrue("same content", Arrays.equals(data, ol.getCachedBytes()));
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(type, in.getType());
- assertEquals(data.length, in.getSize());
- byte[] data2 = new byte[data.length];
- IO.readFully(in, data2, 0, data.length);
- assertTrue("same content", Arrays.equals(data, ol.getCachedBytes()));
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(type, in.getType());
+ assertEquals(data.length, in.getSize());
+ byte[] data2 = new byte[data.length];
+ IO.readFully(in, data2, 0, data.length);
+ assertTrue("same content",
+ Arrays.equals(data, ol.getCachedBytes()));
+ }
}
@Test
@@ -444,13 +424,8 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
write(id, compressPackFormat(type, data));
ObjectLoader ol;
- {
- FileInputStream fs = new FileInputStream(path(id));
- try {
- ol = UnpackedObject.open(fs, path(id), id, wc);
- } finally {
- fs.close();
- }
+ try (FileInputStream fs = new FileInputStream(path(id))) {
+ ol = UnpackedObject.open(fs, path(id), id, wc);
}
assertNotNull("created loader", ol);
@@ -466,15 +441,15 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
.getMessage());
}
- ObjectStream in = ol.openStream();
- assertNotNull("have stream", in);
- assertEquals(type, in.getType());
- assertEquals(data.length, in.getSize());
- byte[] data2 = new byte[data.length];
- IO.readFully(in, data2, 0, data.length);
- assertTrue("same content", Arrays.equals(data2, data));
- assertEquals("stream at EOF", -1, in.read());
- in.close();
+ try (ObjectStream in = ol.openStream()) {
+ assertNotNull("have stream", in);
+ assertEquals(type, in.getType());
+ assertEquals(data.length, in.getSize());
+ byte[] data2 = new byte[data.length];
+ IO.readFully(in, data2, 0, data.length);
+ assertTrue("same content", Arrays.equals(data2, data));
+ assertEquals("stream at EOF", -1, in.read());
+ }
}
@Test
@@ -573,11 +548,8 @@ public class UnpackedObjectTest extends LocalDiskRepositoryTestCase {
private void write(ObjectId id, byte[] data) throws IOException {
File path = path(id);
FileUtils.mkdirs(path.getParentFile());
- FileOutputStream out = new FileOutputStream(path);
- try {
+ try (FileOutputStream out = new FileOutputStream(path)) {
out.write(data);
- } finally {
- out.close();
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/WindowCacheGetTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/WindowCacheGetTest.java
index cc348388cf..9ac794ed8e 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/WindowCacheGetTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/WindowCacheGetTest.java
@@ -74,11 +74,10 @@ public class WindowCacheGetTest extends SampleDataRepositoryTestCase {
super.setUp();
toLoad = new ArrayList<>();
- final BufferedReader br = new BufferedReader(new InputStreamReader(
+ try (BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(JGitTestUtil
.getTestResourceFile("all_packed_objects.txt")),
- Constants.CHARSET));
- try {
+ Constants.CHARSET))) {
String line;
while ((line = br.readLine()) != null) {
final String[] parts = line.split(" {1,}");
@@ -90,8 +89,6 @@ public class WindowCacheGetTest extends SampleDataRepositoryTestCase {
// parts[4] is the offset in the pack
toLoad.add(o);
}
- } finally {
- br.close();
}
assertEquals(96, toLoad.size());
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RacyGitTests.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RacyGitTests.java
index 9236b4e821..8d9ccab1bd 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RacyGitTests.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RacyGitTests.java
@@ -176,12 +176,9 @@ public class RacyGitTests extends RepositoryTestCase {
private File addToWorkDir(String path, String content) throws IOException {
File f = new File(db.getWorkTree(), path);
- FileOutputStream fos = new FileOutputStream(f);
- try {
+ try (FileOutputStream fos = new FileOutputStream(f)) {
fos.write(content.getBytes(Constants.CHARACTER_ENCODING));
return f;
- } finally {
- fos.close();
}
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefTest.java
index 7fb3309982..e93867829a 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RefTest.java
@@ -253,11 +253,11 @@ public class RefTest extends SampleDataRepositoryTestCase {
InterruptedException {
Ref ref = db.exactRef("refs/heads/master");
assertEquals(Storage.PACKED, ref.getStorage());
- FileOutputStream os = new FileOutputStream(new File(db.getDirectory(),
- "refs/heads/master"));
- os.write(ref.getObjectId().name().getBytes());
- os.write('\n');
- os.close();
+ try (FileOutputStream os = new FileOutputStream(
+ new File(db.getDirectory(), "refs/heads/master"))) {
+ os.write(ref.getObjectId().name().getBytes());
+ os.write('\n');
+ }
ref = db.exactRef("refs/heads/master");
assertEquals(Storage.LOOSE, ref.getStorage());
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryCacheTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryCacheTest.java
index 1107c2c69b..58b005c282 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryCacheTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryCacheTest.java
@@ -94,24 +94,25 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testFileKeyOpenExisting() throws IOException {
- Repository r;
-
- r = new FileKey(db.getDirectory(), db.getFS()).open(true);
- assertNotNull(r);
- assertEqualsFile(db.getDirectory(), r.getDirectory());
- r.close();
+ try (Repository r = new FileKey(db.getDirectory(), db.getFS())
+ .open(true)) {
+ assertNotNull(r);
+ assertEqualsFile(db.getDirectory(), r.getDirectory());
+ }
- r = new FileKey(db.getDirectory(), db.getFS()).open(false);
- assertNotNull(r);
- assertEqualsFile(db.getDirectory(), r.getDirectory());
- r.close();
+ try (Repository r = new FileKey(db.getDirectory(), db.getFS())
+ .open(false)) {
+ assertNotNull(r);
+ assertEqualsFile(db.getDirectory(), r.getDirectory());
+ }
}
@Test
public void testFileKeyOpenNew() throws IOException {
- final Repository n = createRepository(true, false);
- final File gitdir = n.getDirectory();
- n.close();
+ File gitdir;
+ try (Repository n = createRepository(true, false)) {
+ gitdir = n.getDirectory();
+ }
recursiveDelete(gitdir);
assertFalse(gitdir.exists());
@@ -143,6 +144,7 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testCacheOpen() throws Exception {
final FileKey loc = FileKey.exact(db.getDirectory(), db.getFS());
+ @SuppressWarnings("resource") // We are testing the close() method
final Repository d2 = RepositoryCache.open(loc);
assertNotSame(db, d2);
assertSame(d2, RepositoryCache.open(FileKey.exact(loc.getFile(), db.getFS())));
@@ -176,6 +178,7 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testRepositoryUsageCount() throws Exception {
FileKey loc = FileKey.exact(db.getDirectory(), db.getFS());
+ @SuppressWarnings("resource") // We are testing the close() method
Repository d2 = RepositoryCache.open(loc);
assertEquals(1, d2.useCnt.get());
RepositoryCache.open(FileKey.exact(loc.getFile(), db.getFS()));
@@ -189,6 +192,7 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testRepositoryUsageCountWithRegisteredRepository()
throws IOException {
+ @SuppressWarnings("resource") // We are testing the close() method
Repository repo = createRepository(false, false);
assertEquals(1, repo.useCnt.get());
RepositoryCache.register(repo);
@@ -200,6 +204,7 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testRepositoryNotUnregisteringWhenClosing() throws Exception {
FileKey loc = FileKey.exact(db.getDirectory(), db.getFS());
+ @SuppressWarnings("resource") // We are testing the close() method
Repository d2 = RepositoryCache.open(loc);
assertEquals(1, d2.useCnt.get());
assertThat(RepositoryCache.getRegisteredKeys(),
@@ -214,6 +219,7 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testRepositoryUnregisteringWhenExpiredAndUsageCountNegative()
throws Exception {
+ @SuppressWarnings("resource") // We are testing the close() method
Repository repoA = createBareRepository();
RepositoryCache.register(repoA);
@@ -234,7 +240,9 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testRepositoryUnregisteringWhenExpired() throws Exception {
+ @SuppressWarnings("resource") // We are testing the close() method
Repository repoA = createRepository(true, false);
+ @SuppressWarnings("resource") // We are testing the close() method
Repository repoB = createRepository(true, false);
Repository repoC = createBareRepository();
RepositoryCache.register(repoA);
@@ -268,6 +276,7 @@ public class RepositoryCacheTest extends RepositoryTestCase {
@Test
public void testReconfigure() throws InterruptedException, IOException {
+ @SuppressWarnings("resource") // We are testing the close() method
Repository repo = createRepository(false, false);
RepositoryCache.register(repo);
assertTrue(RepositoryCache.isCached(repo));
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/SquashCommitMsgTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/SquashCommitMsgTest.java
index 3bcd787f81..203c00e28a 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/SquashCommitMsgTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/SquashCommitMsgTest.java
@@ -66,12 +66,9 @@ public class SquashCommitMsgTest extends RepositoryTestCase {
db.writeSquashCommitMsg(null);
assertEquals(db.readSquashCommitMsg(), null);
assertFalse(new File(db.getDirectory(), Constants.SQUASH_MSG).exists());
- FileOutputStream fos = new FileOutputStream(new File(db.getDirectory(),
- Constants.SQUASH_MSG));
- try {
+ try (FileOutputStream fos = new FileOutputStream(
+ new File(db.getDirectory(), Constants.SQUASH_MSG))) {
fos.write(squashMsg.getBytes(Constants.CHARACTER_ENCODING));
- } finally {
- fos.close();
}
assertEquals(db.readSquashCommitMsg(), squashMsg);
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/merge/ResolveMergerTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/merge/ResolveMergerTest.java
index 9734ac851c..75b87447d4 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/merge/ResolveMergerTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/merge/ResolveMergerTest.java
@@ -1033,19 +1033,21 @@ public class ResolveMergerTest extends RepositoryTestCase {
git.commit().setMessage("added c.txt").call();
// Get a handle to the the file so on windows it can't be deleted.
- FileInputStream fis = new FileInputStream(new File(db.getWorkTree(),
- "b.txt"));
- MergeResult mergeRes = git.merge().setStrategy(strategy)
- .include(masterCommit).call();
- if (mergeRes.getMergeStatus().equals(MergeStatus.FAILED)) {
- // probably windows
- assertEquals(1, mergeRes.getFailingPaths().size());
- assertEquals(MergeFailureReason.COULD_NOT_DELETE, mergeRes
- .getFailingPaths().get("b.txt"));
+ try (FileInputStream fis = new FileInputStream(
+ new File(db.getWorkTree(), "b.txt"))) {
+ MergeResult mergeRes = git.merge().setStrategy(strategy)
+ .include(masterCommit).call();
+ if (mergeRes.getMergeStatus().equals(MergeStatus.FAILED)) {
+ // probably windows
+ assertEquals(1, mergeRes.getFailingPaths().size());
+ assertEquals(MergeFailureReason.COULD_NOT_DELETE,
+ mergeRes.getFailingPaths().get("b.txt"));
+ }
+ assertEquals(
+ "[a.txt, mode:100644, content:master]"
+ + "[c.txt, mode:100644, content:side]",
+ indexState(CONTENT));
}
- assertEquals("[a.txt, mode:100644, content:master]"
- + "[c.txt, mode:100644, content:side]", indexState(CONTENT));
- fis.close();
}
@Theory
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcErrorTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcErrorTest.java
index e4b43172d6..6989343362 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcErrorTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcErrorTest.java
@@ -96,17 +96,14 @@ public class PatchCcErrorTest {
private Patch parseTestPatchFile() throws IOException {
final String patchFile = JGitTestUtil.getName() + ".patch";
- final InputStream in = getClass().getResourceAsStream(patchFile);
- if (in == null) {
- fail("No " + patchFile + " test vector");
- return null; // Never happens
- }
- try {
+ try (InputStream in = getClass().getResourceAsStream(patchFile)) {
+ if (in == null) {
+ fail("No " + patchFile + " test vector");
+ return null; // Never happens
+ }
final Patch p = new Patch();
p.parse(in);
return p;
- } finally {
- in.close();
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcTest.java
index 837414b054..4a26d50e49 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchCcTest.java
@@ -199,17 +199,14 @@ public class PatchCcTest {
private Patch parseTestPatchFile() throws IOException {
final String patchFile = JGitTestUtil.getName() + ".patch";
- final InputStream in = getClass().getResourceAsStream(patchFile);
- if (in == null) {
- fail("No " + patchFile + " test vector");
- return null; // Never happens
- }
- try {
+ try (InputStream in = getClass().getResourceAsStream(patchFile)) {
+ if (in == null) {
+ fail("No " + patchFile + " test vector");
+ return null; // Never happens
+ }
final Patch p = new Patch();
p.parse(in);
return p;
- } finally {
- in.close();
}
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchErrorTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchErrorTest.java
index 52e3874b6c..3bdf852167 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchErrorTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchErrorTest.java
@@ -177,17 +177,14 @@ public class PatchErrorTest {
private Patch parseTestPatchFile() throws IOException {
final String patchFile = JGitTestUtil.getName() + ".patch";
- final InputStream in = getClass().getResourceAsStream(patchFile);
- if (in == null) {
- fail("No " + patchFile + " test vector");
- return null; // Never happens
- }
- try {
+ try (InputStream in = getClass().getResourceAsStream(patchFile)) {
+ if (in == null) {
+ fail("No " + patchFile + " test vector");
+ return null; // Never happens
+ }
final Patch p = new Patch();
p.parse(in);
return p;
- } finally {
- in.close();
}
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchTest.java
index 9f57ab98c0..6a09a4919e 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/patch/PatchTest.java
@@ -357,17 +357,14 @@ public class PatchTest {
private Patch parseTestPatchFile() throws IOException {
final String patchFile = JGitTestUtil.getName() + ".patch";
- final InputStream in = getClass().getResourceAsStream(patchFile);
- if (in == null) {
- fail("No " + patchFile + " test vector");
- return null; // Never happens
- }
- try {
+ try (InputStream in = getClass().getResourceAsStream(patchFile)) {
+ if (in == null) {
+ fail("No " + patchFile + " test vector");
+ return null; // Never happens
+ }
final Patch p = new Patch();
p.parse(in);
return p;
- } finally {
- in.close();
}
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleAddTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleAddTest.java
index f42dd02814..1a67e41976 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleAddTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleAddTest.java
@@ -129,10 +129,11 @@ public class SubmoduleAddTest extends RepositoryTestCase {
command.setPath(path);
String uri = db.getDirectory().toURI().toString();
command.setURI(uri);
- Repository repo = command.call();
- assertNotNull(repo);
- ObjectId subCommit = repo.resolve(Constants.HEAD);
- repo.close();
+ ObjectId subCommit;
+ try (Repository repo = command.call()) {
+ assertNotNull(repo);
+ subCommit = repo.resolve(Constants.HEAD);
+ }
SubmoduleWalk generator = SubmoduleWalk.forIndex(db);
assertTrue(generator.next());
@@ -141,10 +142,10 @@ public class SubmoduleAddTest extends RepositoryTestCase {
assertEquals(uri, generator.getModulesUrl());
assertEquals(path, generator.getModulesPath());
assertEquals(uri, generator.getConfigUrl());
- Repository subModRepo = generator.getRepository();
- assertNotNull(subModRepo);
- assertEquals(subCommit, commit);
- subModRepo.close();
+ try (Repository subModRepo = generator.getRepository()) {
+ assertNotNull(subModRepo);
+ assertEquals(subCommit, commit);
+ }
Status status = Git.wrap(db).status().call();
assertTrue(status.getAdded().contains(Constants.DOT_GIT_MODULES));
@@ -209,16 +210,14 @@ public class SubmoduleAddTest extends RepositoryTestCase {
fullUri = fullUri.replace('\\', '/');
}
assertEquals(fullUri, generator.getConfigUrl());
- Repository subModRepo = generator.getRepository();
- assertNotNull(subModRepo);
- assertEquals(
- fullUri,
- subModRepo
- .getConfig()
- .getString(ConfigConstants.CONFIG_REMOTE_SECTION,
- Constants.DEFAULT_REMOTE_NAME,
- ConfigConstants.CONFIG_KEY_URL));
- subModRepo.close();
+ try (Repository subModRepo = generator.getRepository()) {
+ assertNotNull(subModRepo);
+ assertEquals(fullUri,
+ subModRepo.getConfig().getString(
+ ConfigConstants.CONFIG_REMOTE_SECTION,
+ Constants.DEFAULT_REMOTE_NAME,
+ ConfigConstants.CONFIG_KEY_URL));
+ }
assertEquals(commit, repo.resolve(Constants.HEAD));
Status status = Git.wrap(db).status().call();
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleSyncTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleSyncTest.java
index 13db44a9c5..6f3b52f7bb 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleSyncTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleSyncTest.java
@@ -135,12 +135,14 @@ public class SubmoduleSyncTest extends RepositoryTestCase {
generator = SubmoduleWalk.forIndex(db);
assertTrue(generator.next());
assertEquals(url, generator.getConfigUrl());
- Repository subModRepository = generator.getRepository();
- StoredConfig submoduleConfig = subModRepository.getConfig();
- subModRepository.close();
- assertEquals(url, submoduleConfig.getString(
- ConfigConstants.CONFIG_REMOTE_SECTION,
- Constants.DEFAULT_REMOTE_NAME, ConfigConstants.CONFIG_KEY_URL));
+ try (Repository subModRepository = generator.getRepository()) {
+ StoredConfig submoduleConfig = subModRepository.getConfig();
+ assertEquals(url,
+ submoduleConfig.getString(
+ ConfigConstants.CONFIG_REMOTE_SECTION,
+ Constants.DEFAULT_REMOTE_NAME,
+ ConfigConstants.CONFIG_KEY_URL));
+ }
}
@Test
@@ -208,11 +210,13 @@ public class SubmoduleSyncTest extends RepositoryTestCase {
generator = SubmoduleWalk.forIndex(db);
assertTrue(generator.next());
assertEquals("git://server/sub.git", generator.getConfigUrl());
- Repository subModRepository1 = generator.getRepository();
- StoredConfig submoduleConfig = subModRepository1.getConfig();
- subModRepository1.close();
- assertEquals("git://server/sub.git", submoduleConfig.getString(
- ConfigConstants.CONFIG_REMOTE_SECTION,
- Constants.DEFAULT_REMOTE_NAME, ConfigConstants.CONFIG_KEY_URL));
+ try (Repository subModRepository1 = generator.getRepository()) {
+ StoredConfig submoduleConfig = subModRepository1.getConfig();
+ assertEquals("git://server/sub.git",
+ submoduleConfig.getString(
+ ConfigConstants.CONFIG_REMOTE_SECTION,
+ Constants.DEFAULT_REMOTE_NAME,
+ ConfigConstants.CONFIG_KEY_URL));
+ }
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleUpdateTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleUpdateTest.java
index 7064f6097b..bbce413ef3 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleUpdateTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/submodule/SubmoduleUpdateTest.java
@@ -121,10 +121,10 @@ public class SubmoduleUpdateTest extends RepositoryTestCase {
SubmoduleWalk generator = SubmoduleWalk.forIndex(db);
assertTrue(generator.next());
- Repository subRepo = generator.getRepository();
- assertNotNull(subRepo);
- assertEquals(commit, subRepo.resolve(Constants.HEAD));
- subRepo.close();
+ try (Repository subRepo = generator.getRepository()) {
+ assertNotNull(subRepo);
+ assertEquals(commit, subRepo.resolve(Constants.HEAD));
+ }
}
@Test
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/NetRCTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/NetRCTest.java
index 2fea8a92ac..77cb726f1e 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/NetRCTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/NetRCTest.java
@@ -74,10 +74,10 @@ public class NetRCTest extends RepositoryTestCase {
}
private void config(final String data) throws IOException {
- final OutputStreamWriter fw = new OutputStreamWriter(
- new FileOutputStream(configFile), "UTF-8");
- fw.write(data);
- fw.close();
+ try (OutputStreamWriter fw = new OutputStreamWriter(
+ new FileOutputStream(configFile), "UTF-8")) {
+ fw.write(data);
+ }
}
@Test
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PackParserTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PackParserTest.java
index 5d9bdbdbad..b6d0611437 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PackParserTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/PackParserTest.java
@@ -93,8 +93,7 @@ public class PackParserTest extends RepositoryTestCase {
@Test
public void test1() throws IOException {
File packFile = JGitTestUtil.getTestResourceFile("pack-34be9032ac282b11fa9babdc2b2a93ca996c9c2f.pack");
- final InputStream is = new FileInputStream(packFile);
- try {
+ try (InputStream is = new FileInputStream(packFile)) {
ObjectDirectoryPackParser p = (ObjectDirectoryPackParser) index(is);
p.parse(NullProgressMonitor.INSTANCE);
PackFile file = p.getPackFile();
@@ -107,8 +106,6 @@ public class PackParserTest extends RepositoryTestCase {
assertTrue(file.hasObject(ObjectId.fromString("902d5476fa249b7abc9d84c611577a81381f0327")));
assertTrue(file.hasObject(ObjectId.fromString("aabf2ffaec9b497f0950352b3e582d73035c2035")));
assertTrue(file.hasObject(ObjectId.fromString("c59759f143fb1fe21c197981df75a7ee00290799")));
- } finally {
- is.close();
}
}
@@ -121,8 +118,7 @@ public class PackParserTest extends RepositoryTestCase {
@Test
public void test2() throws IOException {
File packFile = JGitTestUtil.getTestResourceFile("pack-df2982f284bbabb6bdb59ee3fcc6eb0983e20371.pack");
- final InputStream is = new FileInputStream(packFile);
- try {
+ try (InputStream is = new FileInputStream(packFile)) {
ObjectDirectoryPackParser p = (ObjectDirectoryPackParser) index(is);
p.parse(NullProgressMonitor.INSTANCE);
PackFile file = p.getPackFile();
@@ -140,8 +136,6 @@ public class PackParserTest extends RepositoryTestCase {
assertTrue(file.hasObject(ObjectId.fromString("20a8ade77639491ea0bd667bf95de8abf3a434c8")));
assertTrue(file.hasObject(ObjectId.fromString("2675188fd86978d5bc4d7211698b2118ae3bf658")));
// and lots more...
- } finally {
- is.close();
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java
index 2251a3dc66..33e2529731 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/transport/WalkEncryptionTest.java
@@ -419,12 +419,9 @@ public class WalkEncryptionTest {
URLConnection c = url.openConnection();
c.setConnectTimeout(500);
c.setReadTimeout(500);
- BufferedReader reader = new BufferedReader(
- new InputStreamReader(c.getInputStream()));
- try {
+ try (BufferedReader reader = new BufferedReader(
+ new InputStreamReader(c.getInputStream()))) {
return reader.readLine();
- } finally {
- reader.close();
}
} catch (UnknownHostException | SocketTimeoutException e) {
return "Can't reach http://checkip.amazonaws.com to"
@@ -654,9 +651,9 @@ public class WalkEncryptionTest {
Properties props = Props.discover();
props.put(AmazonS3.Keys.PASSWORD, JGIT_PASS);
props.put(AmazonS3.Keys.CRYPTO_ALG, algorithm);
- PrintWriter writer = new PrintWriter(JGIT_CONF_FILE);
- props.store(writer, "JGIT S3 connection configuration file.");
- writer.close();
+ try (PrintWriter writer = new PrintWriter(JGIT_CONF_FILE)) {
+ props.store(writer, "JGIT S3 connection configuration file.");
+ }
}
/**
@@ -668,9 +665,9 @@ public class WalkEncryptionTest {
static void configCreate(Properties source) throws Exception {
Properties target = Props.discover();
target.putAll(source);
- PrintWriter writer = new PrintWriter(JGIT_CONF_FILE);
- target.store(writer, "JGIT S3 connection configuration file.");
- writer.close();
+ try (PrintWriter writer = new PrintWriter(JGIT_CONF_FILE)) {
+ target.store(writer, "JGIT S3 connection configuration file.");
+ }
}
/**
@@ -836,10 +833,10 @@ public class WalkEncryptionTest {
{
byte[] origin = sourceText.getBytes(charset);
ByteArrayOutputStream target = new ByteArrayOutputStream();
- OutputStream source = crypto.encrypt(target);
- source.write(origin);
- source.flush();
- source.close();
+ try (OutputStream source = crypto.encrypt(target)) {
+ source.write(origin);
+ source.flush();
+ }
cipherText = target.toByteArray();
}
{
@@ -1074,10 +1071,10 @@ public class WalkEncryptionTest {
remoteConfig.update(config);
config.save();
- Git git = Git.open(dirOne);
- git.checkout().setName("master").call();
- git.push().setRemote(remote).setRefSpecs(specs).call();
- git.close();
+ try (Git git = Git.open(dirOne)) {
+ git.checkout().setName("master").call();
+ git.push().setRemote(remote).setRefSpecs(specs).call();
+ }
File fileStatic = new File(dirOne, nameStatic);
assertTrue("Provided by setup", fileStatic.exists());
@@ -1089,11 +1086,11 @@ public class WalkEncryptionTest {
File fileStatic = new File(dirTwo, nameStatic);
assertFalse("Not Provided by setup", fileStatic.exists());
- Git git = Git.cloneRepository().setURI(uri).setDirectory(dirTwo)
- .call();
- git.close();
+ try (Git git = Git.cloneRepository().setURI(uri)
+ .setDirectory(dirTwo).call()) {
+ assertTrue("Provided by clone", fileStatic.exists());
+ }
- assertTrue("Provided by clone", fileStatic.exists());
}
{ // Verify static file content.
@@ -1111,11 +1108,11 @@ public class WalkEncryptionTest {
assertTrue("Provided by create", fileDynamic.exists());
assertTrue("Need content to encrypt", fileDynamic.length() > 0);
- Git git = Git.open(dirOne);
- git.add().addFilepattern(nameDynamic).call();
- git.commit().setMessage(nameDynamic).call();
- git.push().setRemote(remote).setRefSpecs(specs).call();
- git.close();
+ try (Git git = Git.open(dirOne)) {
+ git.add().addFilepattern(nameDynamic).call();
+ git.commit().setMessage(nameDynamic).call();
+ git.push().setRemote(remote).setRefSpecs(specs).call();
+ }
}
@@ -1124,9 +1121,9 @@ public class WalkEncryptionTest {
File fileDynamic = new File(dirTwo, nameDynamic);
assertFalse("Not Provided by setup", fileDynamic.exists());
- Git git = Git.open(dirTwo);
- git.pull().call();
- git.close();
+ try (Git git = Git.open(dirTwo)) {
+ git.pull().call();
+ }
assertTrue("Provided by pull", fileDynamic.exists());
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/filter/NotTreeFilterTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/filter/NotTreeFilterTest.java
index f7a7fb8a97..c6389fb1ae 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/filter/NotTreeFilterTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/filter/NotTreeFilterTest.java
@@ -57,12 +57,13 @@ import org.junit.Test;
public class NotTreeFilterTest extends RepositoryTestCase {
@Test
public void testWrap() throws Exception {
- final TreeWalk tw = new TreeWalk(db);
- final TreeFilter a = TreeFilter.ALL;
- final TreeFilter n = NotTreeFilter.create(a);
- assertNotNull(n);
- assertTrue(a.include(tw));
- assertFalse(n.include(tw));
+ try (TreeWalk tw = new TreeWalk(db)) {
+ final TreeFilter a = TreeFilter.ALL;
+ final TreeFilter n = NotTreeFilter.create(a);
+ assertNotNull(n);
+ assertTrue(a.include(tw));
+ assertFalse(n.include(tw));
+ }
}
@Test
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/TemporaryBufferTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/TemporaryBufferTest.java
index d978804d57..327ee279a1 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/TemporaryBufferTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/TemporaryBufferTest.java
@@ -87,10 +87,8 @@ public class TemporaryBufferTest {
assertEquals(1, r.length);
assertEquals(test, r[0]);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(1, r.length);
assertEquals(test, r[0]);
@@ -118,10 +116,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -149,10 +145,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -178,10 +172,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -208,10 +200,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -236,10 +226,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -253,14 +241,13 @@ public class TemporaryBufferTest {
public void testInCoreInputStream() throws IOException {
final int cnt = 256;
final byte[] test = new TestRng(getName()).nextBytes(cnt);
- final TemporaryBuffer.Heap b = new TemporaryBuffer.Heap(cnt + 4);
- b.write(test);
- b.close();
-
- InputStream in = b.openInputStream();
- byte[] act = new byte[cnt];
- IO.readFully(in, act, 0, cnt);
- assertArrayEquals(test, act);
+ try (final TemporaryBuffer.Heap b = new TemporaryBuffer.Heap(cnt + 4)) {
+ b.write(test);
+ InputStream in = b.openInputStream();
+ byte[] act = new byte[cnt];
+ IO.readFully(in, act, 0, cnt);
+ assertArrayEquals(test, act);
+ }
}
@Test
@@ -279,10 +266,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -308,10 +293,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -340,10 +323,8 @@ public class TemporaryBufferTest {
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(test.length, r.length);
assertArrayEquals(test, r);
@@ -399,10 +380,8 @@ public class TemporaryBufferTest {
assertEquals(expect.length, r.length);
assertArrayEquals(expect, r);
}
- {
- final ByteArrayOutputStream o = new ByteArrayOutputStream();
+ try (ByteArrayOutputStream o = new ByteArrayOutputStream()) {
b.writeTo(o, null);
- o.close();
final byte[] r = o.toByteArray();
assertEquals(expect.length, r.length);
assertArrayEquals(expect, r);
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/AutoCRLFOutputStreamTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/AutoCRLFOutputStreamTest.java
index a72d33cd51..0655827310 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/AutoCRLFOutputStreamTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/AutoCRLFOutputStreamTest.java
@@ -96,32 +96,31 @@ public class AutoCRLFOutputStreamTest {
for (int i = -4; i < 5; ++i) {
int size = Math.abs(i);
byte[] buf = new byte[size];
- InputStream in = new ByteArrayInputStream(inbytes);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- OutputStream out = new AutoCRLFOutputStream(bos);
- if (i > 0) {
- int n;
- while ((n = in.read(buf)) >= 0) {
- out.write(buf, 0, n);
+ try (InputStream in = new ByteArrayInputStream(inbytes);
+ ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ OutputStream out = new AutoCRLFOutputStream(bos)) {
+ if (i > 0) {
+ int n;
+ while ((n = in.read(buf)) >= 0) {
+ out.write(buf, 0, n);
+ }
+ } else if (i < 0) {
+ int n;
+ while ((n = in.read(buf)) >= 0) {
+ byte[] b = new byte[n];
+ System.arraycopy(buf, 0, b, 0, n);
+ out.write(b);
+ }
+ } else {
+ int c;
+ while ((c = in.read()) != -1)
+ out.write(c);
}
- } else if (i < 0) {
- int n;
- while ((n = in.read(buf)) >= 0) {
- byte[] b = new byte[n];
- System.arraycopy(buf, 0, b, 0, n);
- out.write(b);
- }
- } else {
- int c;
- while ((c = in.read()) != -1)
- out.write(c);
+ out.flush();
+ byte[] actualBytes = bos.toByteArray();
+ Assert.assertEquals("bufsize=" + size, encode(expectBytes),
+ encode(actualBytes));
}
- out.flush();
- in.close();
- out.close();
- byte[] actualBytes = bos.toByteArray();
- Assert.assertEquals("bufsize=" + size, encode(expectBytes),
- encode(actualBytes));
}
}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/UnionInputStreamTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/UnionInputStreamTest.java
index 6b5ef7ec64..b824fae9fd 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/UnionInputStreamTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/io/UnionInputStreamTest.java
@@ -58,13 +58,13 @@ import org.junit.Test;
public class UnionInputStreamTest {
@Test
public void testEmptyStream() throws IOException {
- final UnionInputStream u = new UnionInputStream();
- assertTrue(u.isEmpty());
- assertEquals(-1, u.read());
- assertEquals(-1, u.read(new byte[1], 0, 1));
- assertEquals(0, u.available());
- assertEquals(0, u.skip(1));
- u.close();
+ try (UnionInputStream u = new UnionInputStream()) {
+ assertTrue(u.isEmpty());
+ assertEquals(-1, u.read());
+ assertEquals(-1, u.read(new byte[1], 0, 1));
+ assertEquals(0, u.available());
+ assertEquals(0, u.skip(1));
+ }
}
@Test
@@ -211,25 +211,24 @@ public class UnionInputStreamTest {
@Test
public void testCloseDuringClose() throws IOException {
- final UnionInputStream u = new UnionInputStream();
final boolean closed[] = new boolean[2];
- u.add(new ByteArrayInputStream(new byte[] { 1 }) {
- @Override
- public void close() {
- closed[0] = true;
- }
- });
- u.add(new ByteArrayInputStream(new byte[] { 2 }) {
- @Override
- public void close() {
- closed[1] = true;
- }
- });
+ try (UnionInputStream u = new UnionInputStream()) {
+ u.add(new ByteArrayInputStream(new byte[] { 1 }) {
+ @Override
+ public void close() {
+ closed[0] = true;
+ }
+ });
+ u.add(new ByteArrayInputStream(new byte[] { 2 }) {
+ @Override
+ public void close() {
+ closed[1] = true;
+ }
+ });
- assertFalse(closed[0]);
- assertFalse(closed[1]);
-
- u.close();
+ assertFalse(closed[0]);
+ assertFalse(closed[1]);
+ }
assertTrue(closed[0]);
assertTrue(closed[1]);
@@ -237,6 +236,7 @@ public class UnionInputStreamTest {
@Test
public void testExceptionDuringClose() {
+ @SuppressWarnings("resource") // We are testing the close() method
final UnionInputStream u = new UnionInputStream();
u.add(new ByteArrayInputStream(new byte[] { 1 }) {
@Override