summaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit.test
diff options
context:
space:
mode:
authorRobin Rosenberg <robin.rosenberg@dewire.com>2011-09-04 11:10:47 +0200
committerMatthias Sohn <matthias.sohn@sap.com>2011-09-05 17:01:56 +0200
commiteadc26c0a057456cdcb4234bc89846b2207e40f0 (patch)
tree8115efc9bfe39558a7c7b17b3130811ae81997ba /org.eclipse.jgit.test
parent8001b19a8cb59e74041a73956f4b3bbacd7cc31f (diff)
downloadjgit-eadc26c0a057456cdcb4234bc89846b2207e40f0.tar.gz
jgit-eadc26c0a057456cdcb4234bc89846b2207e40f0.zip
Add a helper for parsing branch switch info out of a reflog entry
Change-Id: I91c7e08c4afd2562df2226887a933d93c78a0371 Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.jgit.test')
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/ReflogReaderTest.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/ReflogReaderTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/ReflogReaderTest.java
index afb3ddd9dc..c0cc0c3b7a 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/ReflogReaderTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/ReflogReaderTest.java
@@ -45,6 +45,7 @@
package org.eclipse.jgit.storage.file;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import java.io.File;
@@ -54,6 +55,7 @@ import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.List;
+import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.ObjectId;
import org.eclipse.jgit.lib.PersonIdent;
import org.eclipse.jgit.lib.SampleDataRepositoryTestCase;
@@ -85,6 +87,9 @@ public class ReflogReaderTest extends SampleDataRepositoryTestCase {
static byte[] oneLineWithoutComment = "da85355dfc525c9f6f3927b876f379f46ccf826e 3e7549db262d1e836d9bf0af7e22355468f1717c A O Thor Too <authortoo@wri.tr> 1243028200 +0200\n"
.getBytes();
+ static byte[] switchBranch = "0d43a6890a19fd657faad1c4cfbe3cb1b47851c3 4809df9c0d8bce5b00955563f77c5a9f25aa0d12 A O Thor Too <authortoo@wri.tr> 1315088009 +0200\tcheckout: moving from new/work to master\n"
+ .getBytes();
+
@Test
public void testReadOneLine() throws Exception {
setupReflog("logs/refs/heads/master", oneLine);
@@ -211,6 +216,19 @@ public class ReflogReaderTest extends SampleDataRepositoryTestCase {
assertNull(db.getReflogReader("master").getLastEntry());
}
+ @Test
+ public void testCheckout() throws Exception {
+ setupReflog("logs/HEAD", switchBranch);
+ List<ReflogEntry> entries = db.getReflogReader(Constants.HEAD)
+ .getReverseEntries();
+ assertEquals(1, entries.size());
+ ReflogEntry entry = entries.get(0);
+ CheckoutEntry checkout = entry.parseCheckout();
+ assertNotNull(checkout);
+ assertEquals("master", checkout.getToBranch());
+ assertEquals("new/work", checkout.getFromBranch());
+ }
+
private void setupReflog(String logName, byte[] data)
throws FileNotFoundException, IOException {
File logfile = new File(db.getDirectory(), logName);