From 5e010729291f732d4f31cbf66649dbac1e795a59 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 27 Jul 2012 21:41:26 -0400 Subject: [PATCH] Fixes to relative path determination for symlinks (issue 116) --- tests/com/gitblit/tests/JGitUtilsTest.java | 30 +++++++++++++++++++++++++----- 1 files changed, 25 insertions(+), 5 deletions(-) diff --git a/tests/com/gitblit/tests/JGitUtilsTest.java b/tests/com/gitblit/tests/JGitUtilsTest.java index e649769..316d136 100644 --- a/tests/com/gitblit/tests/JGitUtilsTest.java +++ b/tests/com/gitblit/tests/JGitUtilsTest.java @@ -37,6 +37,7 @@ import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.lib.RepositoryCache.FileKey; import org.eclipse.jgit.revwalk.RevCommit; +import org.eclipse.jgit.revwalk.RevTree; import org.eclipse.jgit.util.FS; import org.eclipse.jgit.util.FileUtils; import org.junit.Test; @@ -70,7 +71,7 @@ assertEquals(0, list.size()); list.addAll(JGitUtils.getRepositoryList(new File("DoesNotExist"), true, true)); assertEquals(0, list.size()); - list.addAll(JGitUtils.getRepositoryList(GitBlitSuite.REPOSITORIES, true, true)); + list.addAll(JGitUtils.getRepositoryList(GitBlitSuite.REPOSITORIES, false, true)); assertTrue("No repositories found in " + GitBlitSuite.REPOSITORIES, list.size() > 0); } @@ -97,11 +98,11 @@ @Test public void testLastCommit() throws Exception { - assertEquals(new Date(0), JGitUtils.getLastChange(null, null)); + assertEquals(new Date(0), JGitUtils.getLastChange(null)); Repository repository = GitBlitSuite.getHelloworldRepository(); assertTrue(JGitUtils.getCommit(repository, null) != null); - Date date = JGitUtils.getLastChange(repository, null); + Date date = JGitUtils.getLastChange(repository); repository.close(); assertNotNull("Could not get last repository change date!", date); } @@ -119,7 +120,7 @@ assertNull(JGitUtils.getFirstCommit(repository, null)); assertEquals(folder.lastModified(), JGitUtils.getFirstChange(repository, null) .getTime()); - assertEquals(folder.lastModified(), JGitUtils.getLastChange(repository, null).getTime()); + assertEquals(folder.lastModified(), JGitUtils.getLastChange(repository).getTime()); assertNull(JGitUtils.getCommit(repository, null)); repository.close(); assertTrue(GitBlit.self().deleteRepository(repositoryName)); @@ -236,6 +237,25 @@ } @Test + public void testRelinkBranch() throws Exception { + Repository repository = GitBlitSuite.getJGitRepository(); + + // create/set the branch + JGitUtils.setBranchRef(repository, "refs/heads/reftest", "3b358ce514ec655d3ff67de1430994d8428cdb04"); + assertEquals(1, JGitUtils.getAllRefs(repository).get(ObjectId.fromString("3b358ce514ec655d3ff67de1430994d8428cdb04")).size()); + assertEquals(null, JGitUtils.getAllRefs(repository).get(ObjectId.fromString("755dfdb40948f5c1ec79e06bde3b0a78c352f27f"))); + + // reset the branch + JGitUtils.setBranchRef(repository, "refs/heads/reftest", "755dfdb40948f5c1ec79e06bde3b0a78c352f27f"); + assertEquals(null, JGitUtils.getAllRefs(repository).get(ObjectId.fromString("3b358ce514ec655d3ff67de1430994d8428cdb04"))); + assertEquals(1, JGitUtils.getAllRefs(repository).get(ObjectId.fromString("755dfdb40948f5c1ec79e06bde3b0a78c352f27f")).size()); + + // delete the branch + assertTrue(JGitUtils.deleteBranchRef(repository, "refs/heads/reftest")); + repository.close(); + } + + @Test public void testCreateOrphanedBranch() throws Exception { Repository repository = JGitUtils.createRepository(GitBlitSuite.REPOSITORIES, "orphantest"); assertTrue(JGitUtils.createOrphanBranch(repository, @@ -246,7 +266,7 @@ @Test public void testStringContent() throws Exception { Repository repository = GitBlitSuite.getHelloworldRepository(); - String contentA = JGitUtils.getStringContent(repository, null, "java.java"); + String contentA = JGitUtils.getStringContent(repository, (RevTree) null, "java.java"); RevCommit commit = JGitUtils.getCommit(repository, Constants.HEAD); String contentB = JGitUtils.getStringContent(repository, commit.getTree(), "java.java"); String contentC = JGitUtils.getStringContent(repository, commit.getTree(), "missing.txt"); -- Gitblit v1.9.1