From 0b625445ef4aa6dc5883336948015804b462de1d Mon Sep 17 00:00:00 2001 From: Dave Borowitz Date: Thu, 12 Mar 2015 10:59:02 -0700 Subject: [PATCH] TestRepository: Support committing to unborn symref Change-Id: I6bcee635adda7c929f6fa68ef20438fe77e49184 --- .../src/org/eclipse/jgit/junit/TestRepository.java | 3 +-- .../tst/org/eclipse/jgit/junit/TestRepositoryTest.java | 10 ++++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java index a299d144d4..371e139a88 100644 --- a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java +++ b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java @@ -887,9 +887,8 @@ public class TestRepository { branch = b; Ref ref = db.getRef(branch.ref); - if (ref != null) { + if (ref != null && ref.getObjectId() != null) parent(pool.parseCommit(ref.getObjectId())); - } } CommitBuilder(CommitBuilder prior) throws Exception { diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/junit/TestRepositoryTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/junit/TestRepositoryTest.java index cc8ed504d0..87ce011763 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/junit/TestRepositoryTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/junit/TestRepositoryTest.java @@ -265,6 +265,16 @@ public class TestRepositoryTest { assertEquals("bar contents", blobAsString(amended, "bar")); } + @Test + public void commitToUnbornHead() throws Exception { + repo.updateRef("HEAD").link("refs/heads/master"); + RevCommit root = tr.branch("HEAD").commit().create(); + Ref ref = repo.getRef(Constants.HEAD); + assertEquals(root, ref.getObjectId()); + assertTrue(ref.isSymbolic()); + assertEquals("refs/heads/master", ref.getTarget().getName()); + } + private String blobAsString(AnyObjectId treeish, String path) throws Exception { RevObject obj = tr.get(rw.parseTree(treeish), path); -- 2.39.5