Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CheckoutCommandTest.java')
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CheckoutCommandTest.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CheckoutCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CheckoutCommandTest.java
index 21fbe0a134..6e9f851793 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CheckoutCommandTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CheckoutCommandTest.java
@@ -47,6 +47,7 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
@@ -239,4 +240,20 @@ public class CheckoutCommandTest extends RepositoryTestCase {
fail(e.getMessage());
}
}
+
+ @Test
+ public void testDetachedHeadOnCheckout() throws JGitInternalException,
+ RefAlreadyExistsException, RefNotFoundException,
+ InvalidRefNameException, IOException {
+ CheckoutCommand co = git.checkout();
+ co.setName("master").call();
+
+ String commitId = db.getRef(Constants.MASTER).getObjectId().name();
+ co = git.checkout();
+ co.setName(commitId).call();
+
+ Ref head = db.getRef(Constants.HEAD);
+ assertFalse(head.isSymbolic());
+ assertSame(head, head.getTarget());
+ }
}

Back to the top