public void testUpdateRefDetachedUnbornHead() { ObjectId ppid = db.Resolve("refs/heads/master^"); writeSymref("HEAD", "refs/heads/unborn"); RefUpdate updateRef = db.UpdateRef("HEAD", true); updateRef.IsForceUpdate = true; updateRef.NewObjectId = ppid; RefUpdate.RefUpdateResult update = updateRef.update(); Assert.AreEqual(RefUpdate.RefUpdateResult.NEW, update); Assert.AreEqual(ppid, db.Resolve("HEAD")); Ref @ref = db.getRef("HEAD"); Assert.AreEqual("HEAD", @ref.Name); Assert.IsTrue([email protected](), "is detached"); // the branch HEAD referred to is left untouched Assert.IsNull(db.Resolve("refs/heads/unborn")); ReflogReader reflogReader = new ReflogReader(db, "HEAD"); ReflogReader.Entry e = reflogReader.getReverseEntries()[0]; Assert.AreEqual(ObjectId.ZeroId, e.getOldId()); Assert.AreEqual(ppid, e.getNewId()); Assert.AreEqual("GIT_COMMITTER_EMAIL", e.getWho().EmailAddress); Assert.AreEqual("GIT_COMMITTER_NAME", e.getWho().Name); Assert.AreEqual(1250379778000L, e.getWho().When); }
public void testReadWhileAppendIsInProgress() { setupReflog("logs/refs/heads/master", twoLineWithAppendInProgress); ReflogReader reader = new ReflogReader(db, "refs/heads/master"); var reverseEntries = reader.getReverseEntries(); Assert.AreEqual(2, reverseEntries.Count); ReflogReader.Entry e = reverseEntries[0]; Assert.AreEqual(ObjectId .FromString("c6734895958052a9dbc396cff4459dc1a25029ab"), e .getOldId()); Assert.AreEqual(ObjectId .FromString("54794942a18a237c57a80719afed44bb78172b10"), e .getNewId()); Assert.AreEqual("Same A U Thor", e.getWho().Name); Assert.AreEqual("*****@*****.**", e.getWho().EmailAddress); Assert.AreEqual(60, e.getWho().TimeZoneOffset); Assert.AreEqual("2009-05-22T22:36:42", iso(e.getWho())); Assert.AreEqual( "rebase finished: refs/heads/rr/renamebranch5 onto c6e3b9fe2da0293f11eae202ec35fb343191a82d", e.getComment()); // while similar to testReadTwoLine, we can assume that if we get the last entry // right, everything else is too }
public void testReadTwoLine() { setupReflog("logs/refs/heads/master", twoLine); ReflogReader reader = new ReflogReader(db, "refs/heads/master"); var reverseEntries = reader.getReverseEntries(); Assert.AreEqual(2, reverseEntries.Count); ReflogReader.Entry e = reverseEntries[0]; Assert.AreEqual(ObjectId .FromString("c6734895958052a9dbc396cff4459dc1a25029ab"), e .getOldId()); Assert.AreEqual(ObjectId .FromString("54794942a18a237c57a80719afed44bb78172b10"), e .getNewId()); Assert.AreEqual("Same A U Thor", e.getWho().Name); Assert.AreEqual("*****@*****.**", e.getWho().EmailAddress); Assert.AreEqual(60, e.getWho().TimeZoneOffset); Assert.AreEqual("2009-05-22T22:36:42", iso(e.getWho())); Assert.AreEqual( "rebase finished: refs/heads/rr/renamebranch5 onto c6e3b9fe2da0293f11eae202ec35fb343191a82d", e.getComment()); e = reverseEntries[1]; Assert.AreEqual(ObjectId .FromString("0000000000000000000000000000000000000000"), e .getOldId()); Assert.AreEqual(ObjectId .FromString("c6734895958052a9dbc396cff4459dc1a25029ab"), e .getNewId()); Assert.AreEqual("A U Thor", e.getWho().Name); Assert.AreEqual("*****@*****.**", e.getWho().EmailAddress); Assert.AreEqual(-60, e.getWho().TimeZoneOffset); Assert.AreEqual("2009-05-22T20:36:41", iso(e.getWho())); Assert.AreEqual("branch: Created from rr/renamebranchv4", e.getComment()); }
public void testUpdateRefDetached() { ObjectId pid = db.Resolve("refs/heads/master"); ObjectId ppid = db.Resolve("refs/heads/master^"); RefUpdate updateRef = db.UpdateRef("HEAD", true); updateRef.IsForceUpdate = true; updateRef.NewObjectId = ppid; RefUpdate.RefUpdateResult update = updateRef.Update(); Assert.AreEqual(RefUpdate.RefUpdateResult.Forced, update); Assert.AreEqual(ppid, db.Resolve("HEAD")); Ref @ref = db.getRef("HEAD"); Assert.AreEqual("HEAD", @ref.Name); Assert.AreEqual("HEAD", @ref.OriginalName); // the branch HEAD referred to is left untouched Assert.AreEqual(pid, db.Resolve("refs/heads/master")); ReflogReader reflogReader = new ReflogReader(db, "HEAD"); ReflogReader.Entry e = reflogReader.getReverseEntries()[0]; Assert.AreEqual(pid, e.getOldId()); Assert.AreEqual(ppid, e.getNewId()); Assert.AreEqual("GIT_COMMITTER_EMAIL", e.getWho().EmailAddress); Assert.AreEqual("GIT_COMMITTER_NAME", e.getWho().Name); Assert.AreEqual(1250379778000L, e.getWho().When); }