diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/PostOrderTreeWalkTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/PostOrderTreeWalkTest.java index acbbb39aa..6ad47c295 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/PostOrderTreeWalkTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/treewalk/PostOrderTreeWalkTest.java @@ -60,124 +60,124 @@ import org.junit.Test; public class PostOrderTreeWalkTest extends RepositoryTestCase { @Test public void testInitialize_NoPostOrder() throws Exception { - final TreeWalk tw = new TreeWalk(db); - assertFalse(tw.isPostOrderTraversal()); + try (final TreeWalk tw = new TreeWalk(db)) { + assertFalse(tw.isPostOrderTraversal()); + } } @Test public void testInitialize_TogglePostOrder() throws Exception { - final TreeWalk tw = new TreeWalk(db); - assertFalse(tw.isPostOrderTraversal()); - tw.setPostOrderTraversal(true); - assertTrue(tw.isPostOrderTraversal()); - tw.setPostOrderTraversal(false); - assertFalse(tw.isPostOrderTraversal()); + try (final TreeWalk tw = new TreeWalk(db)) { + assertFalse(tw.isPostOrderTraversal()); + tw.setPostOrderTraversal(true); + assertTrue(tw.isPostOrderTraversal()); + tw.setPostOrderTraversal(false); + assertFalse(tw.isPostOrderTraversal()); + } } @Test public void testResetDoesNotAffectPostOrder() throws Exception { - final TreeWalk tw = new TreeWalk(db); - tw.setPostOrderTraversal(true); - assertTrue(tw.isPostOrderTraversal()); - tw.reset(); - assertTrue(tw.isPostOrderTraversal()); - - tw.setPostOrderTraversal(false); - assertFalse(tw.isPostOrderTraversal()); - tw.reset(); - assertFalse(tw.isPostOrderTraversal()); + try (final TreeWalk tw = new TreeWalk(db)) { + tw.setPostOrderTraversal(true); + assertTrue(tw.isPostOrderTraversal()); + tw.reset(); + assertTrue(tw.isPostOrderTraversal()); + + tw.setPostOrderTraversal(false); + assertFalse(tw.isPostOrderTraversal()); + tw.reset(); + assertFalse(tw.isPostOrderTraversal()); + } } @Test public void testNoPostOrder() throws Exception { final DirCache tree = db.readDirCache(); - { - final DirCacheBuilder b = tree.builder(); - - b.add(makeFile("a")); - b.add(makeFile("b/c")); - b.add(makeFile("b/d")); - b.add(makeFile("q")); - - b.finish(); - assertEquals(4, tree.getEntryCount()); + final DirCacheBuilder b = tree.builder(); + + b.add(makeFile("a")); + b.add(makeFile("b/c")); + b.add(makeFile("b/d")); + b.add(makeFile("q")); + + b.finish(); + assertEquals(4, tree.getEntryCount()); + + try (final TreeWalk tw = new TreeWalk(db)) { + tw.setPostOrderTraversal(false); + tw.addTree(new DirCacheIterator(tree)); + + assertModes("a", REGULAR_FILE, tw); + assertModes("b", TREE, tw); + assertTrue(tw.isSubtree()); + assertFalse(tw.isPostChildren()); + tw.enterSubtree(); + assertModes("b/c", REGULAR_FILE, tw); + assertModes("b/d", REGULAR_FILE, tw); + assertModes("q", REGULAR_FILE, tw); } - - final TreeWalk tw = new TreeWalk(db); - tw.setPostOrderTraversal(false); - tw.addTree(new DirCacheIterator(tree)); - - assertModes("a", REGULAR_FILE, tw); - assertModes("b", TREE, tw); - assertTrue(tw.isSubtree()); - assertFalse(tw.isPostChildren()); - tw.enterSubtree(); - assertModes("b/c", REGULAR_FILE, tw); - assertModes("b/d", REGULAR_FILE, tw); - assertModes("q", REGULAR_FILE, tw); } @Test public void testWithPostOrder_EnterSubtree() throws Exception { final DirCache tree = db.readDirCache(); - { - final DirCacheBuilder b = tree.builder(); + final DirCacheBuilder b = tree.builder(); - b.add(makeFile("a")); - b.add(makeFile("b/c")); - b.add(makeFile("b/d")); - b.add(makeFile("q")); + b.add(makeFile("a")); + b.add(makeFile("b/c")); + b.add(makeFile("b/d")); + b.add(makeFile("q")); - b.finish(); - assertEquals(4, tree.getEntryCount()); - } + b.finish(); + assertEquals(4, tree.getEntryCount()); - final TreeWalk tw = new TreeWalk(db); - tw.setPostOrderTraversal(true); - tw.addTree(new DirCacheIterator(tree)); + try (final TreeWalk tw = new TreeWalk(db)) { + tw.setPostOrderTraversal(true); + tw.addTree(new DirCacheIterator(tree)); - assertModes("a", REGULAR_FILE, tw); + assertModes("a", REGULAR_FILE, tw); - assertModes("b", TREE, tw); - assertTrue(tw.isSubtree()); - assertFalse(tw.isPostChildren()); - tw.enterSubtree(); - assertModes("b/c", REGULAR_FILE, tw); - assertModes("b/d", REGULAR_FILE, tw); + assertModes("b", TREE, tw); + assertTrue(tw.isSubtree()); + assertFalse(tw.isPostChildren()); + tw.enterSubtree(); + assertModes("b/c", REGULAR_FILE, tw); + assertModes("b/d", REGULAR_FILE, tw); - assertModes("b", TREE, tw); - assertTrue(tw.isSubtree()); - assertTrue(tw.isPostChildren()); + assertModes("b", TREE, tw); + assertTrue(tw.isSubtree()); + assertTrue(tw.isPostChildren()); - assertModes("q", REGULAR_FILE, tw); + assertModes("q", REGULAR_FILE, tw); + } } @Test public void testWithPostOrder_NoEnterSubtree() throws Exception { final DirCache tree = db.readDirCache(); - { - final DirCacheBuilder b = tree.builder(); + final DirCacheBuilder b = tree.builder(); - b.add(makeFile("a")); - b.add(makeFile("b/c")); - b.add(makeFile("b/d")); - b.add(makeFile("q")); + b.add(makeFile("a")); + b.add(makeFile("b/c")); + b.add(makeFile("b/d")); + b.add(makeFile("q")); - b.finish(); - assertEquals(4, tree.getEntryCount()); - } + b.finish(); + assertEquals(4, tree.getEntryCount()); - final TreeWalk tw = new TreeWalk(db); - tw.setPostOrderTraversal(true); - tw.addTree(new DirCacheIterator(tree)); + try (final TreeWalk tw = new TreeWalk(db)) { + tw.setPostOrderTraversal(true); + tw.addTree(new DirCacheIterator(tree)); - assertModes("a", REGULAR_FILE, tw); + assertModes("a", REGULAR_FILE, tw); - assertModes("b", TREE, tw); - assertTrue(tw.isSubtree()); - assertFalse(tw.isPostChildren()); + assertModes("b", TREE, tw); + assertTrue(tw.isSubtree()); + assertFalse(tw.isPostChildren()); - assertModes("q", REGULAR_FILE, tw); + assertModes("q", REGULAR_FILE, tw); + } } private DirCacheEntry makeFile(final String path) throws Exception {