public void testEqualsIsIdentity() { RevCommit a1 = Commit(); RevCommit b1 = Commit(); Assert.IsTrue(a1.Equals(a1)); Assert.IsTrue(a1.Equals((object)a1)); Assert.IsFalse(a1.Equals(b1)); Assert.IsFalse(a1.Equals(a1.Copy())); Assert.IsFalse(a1.Equals((object)a1.Copy())); Assert.IsFalse(a1.Equals(string.Empty)); var rw2 = new Core.RevWalk.RevWalk(db); RevCommit a2 = rw2.parseCommit(a1); RevCommit b2 = rw2.parseCommit(b1); Assert.AreNotSame(a1, a2); Assert.AreNotSame(b1, b2); Assert.IsFalse(a1.Equals(a2)); Assert.IsFalse(b1.Equals(b2)); Assert.AreEqual(a1.GetHashCode(), a2.GetHashCode()); Assert.AreEqual(b1.GetHashCode(), b2.GetHashCode()); Assert.IsTrue(AnyObjectId.equals(a1, a2)); Assert.IsTrue(AnyObjectId.equals(b1, b2)); }
public void testParseAllFields() { ObjectId treeId = Id("9788669ad918b6fcce64af8882fc9a81cb6aba67"); const string name = "v1.2.3.4.5"; const string taggerName = "A U. Thor"; const string taggerEmail = "*****@*****.**"; const int taggerTime = 1218123387; var body = new StringBuilder(); body.Append("object "); body.Append(treeId.Name); body.Append("\n"); body.Append("type tree\n"); body.Append("tag "); body.Append(name); body.Append("\n"); body.Append("tagger "); body.Append(taggerName); body.Append(" <"); body.Append(taggerEmail); body.Append("> "); body.Append(taggerTime); body.Append(" +0700\n"); body.Append("\n"); var rw = new Core.RevWalk.RevWalk(db); var c = new RevTag(Id("9473095c4cb2f12aefe1db8a355fe3fafba42f67")); Assert.IsNull(c.getObject()); Assert.IsNull(c.getTagName()); c.parseCanonical(rw, body.ToString().getBytes("UTF-8")); Assert.IsNotNull(c.getObject()); Assert.AreEqual(treeId, c.getObject().getId()); Assert.AreSame(rw.lookupTree(treeId), c.getObject()); Assert.IsNotNull(c.getTagName()); Assert.AreEqual(name, c.getTagName()); Assert.AreEqual(string.Empty, c.getFullMessage()); PersonIdent cTagger = c.getTaggerIdent(); Assert.IsNotNull(cTagger); Assert.AreEqual(taggerName, cTagger.Name); Assert.AreEqual(taggerEmail, cTagger.EmailAddress); }
public void testParseOldStyleNoTagger() { ObjectId treeId = Id("9788669ad918b6fcce64af8882fc9a81cb6aba67"); string name = "v1.2.3.4.5"; string message = "test\n" // + "\n" // + "-----BEGIN PGP SIGNATURE-----\n" // + "Version: GnuPG v1.4.1 (GNU/Linux)\n" // + "\n" // + "iD8DBQBC0b9oF3Y\n" // + "-----END PGP SIGNATURE------n"; var body = new StringBuilder(); body.Append("object "); body.Append(treeId.Name); body.Append("\n"); body.Append("type tree\n"); body.Append("tag "); body.Append(name); body.Append("\n"); body.Append("\n"); body.Append(message); var rw = new Core.RevWalk.RevWalk(db); RevTag c; c = new RevTag(Id("9473095c4cb2f12aefe1db8a355fe3fafba42f67")); Assert.IsNull(c.getObject()); Assert.IsNull(c.getTagName()); c.parseCanonical(rw, body.ToString().getBytes("UTF-8")); Assert.IsNotNull(c.getObject()); Assert.AreEqual(treeId, c.getObject().getId()); Assert.AreSame(rw.lookupTree(treeId), c.getObject()); Assert.IsNotNull(c.getTagName()); Assert.AreEqual(name, c.getTagName()); Assert.AreEqual("test", c.getShortMessage()); Assert.AreEqual(message, c.getFullMessage()); Assert.IsNull(c.getTaggerIdent()); }
public void testUpdateRefForwardWithCheck2() { ObjectId ppid = db.Resolve("refs/heads/master^"); ObjectId pid = db.Resolve("refs/heads/master"); RefUpdate updateRef = db.UpdateRef("refs/heads/master"); updateRef.NewObjectId = ppid; updateRef.IsForceUpdate = true; RefUpdate.RefUpdateResult update = updateRef.update(); Assert.AreEqual(RefUpdate.RefUpdateResult.FORCED, update); Assert.AreEqual(ppid, db.Resolve("refs/heads/master")); // real test RevCommit old = new Core.RevWalk.RevWalk(db).parseCommit(ppid); RefUpdate updateRef2 = db.UpdateRef("refs/heads/master"); updateRef2.ExpectedOldObjectId = old; updateRef2.NewObjectId = pid; RefUpdate.RefUpdateResult update2 = updateRef2.update(); Assert.AreEqual(RefUpdate.RefUpdateResult.FAST_FORWARD, update2); Assert.AreEqual(pid, db.Resolve("refs/heads/master")); }
private void testOneType(int typeCode) { ObjectId locId = Id("9788669ad918b6fcce64af8882fc9a81cb6aba67"); var b = new StringBuilder(); b.Append("object " + locId.Name + "\n"); b.Append("type " + Constants.typeString(typeCode) + "\n"); b.Append("tag v1.2.3.4.5\n"); b.Append("tagger A U. Thor <*****@*****.**> 1218123387 +0700\n"); b.Append("\n"); var rw = new Core.RevWalk.RevWalk(db); var c = new RevTag(Id("9473095c4cb2f12aefe1db8a355fe3fafba42f67")); Assert.IsNull(c.getObject()); Assert.IsNull(c.getTagName()); c.parseCanonical(rw, b.ToString().getBytes("UTF-8")); Assert.IsNotNull(c.getObject()); Assert.AreEqual(locId, c.getObject().getId()); Assert.AreSame(rw.lookupAny(locId, typeCode), c.getObject()); }
public void testUpdateRefForwardWithCheck2() { ObjectId ppid = db.Resolve("refs/heads/master^"); ObjectId pid = db.Resolve("refs/heads/master"); RefUpdate updateRef = db.UpdateRef("refs/heads/master"); updateRef.NewObjectId = ppid; updateRef.IsForceUpdate = true; RefUpdate.RefUpdateResult update = updateRef.Update(); Assert.AreEqual(RefUpdate.RefUpdateResult.Forced, update); Assert.AreEqual(ppid, db.Resolve("refs/heads/master")); // real test RevCommit old = new Core.RevWalk.RevWalk(db).parseCommit(ppid); RefUpdate updateRef2 = db.UpdateRef("refs/heads/master"); updateRef2.ExpectedOldObjectId = old; updateRef2.NewObjectId = pid; RefUpdate.RefUpdateResult update2 = updateRef2.Update(); Assert.AreEqual(RefUpdate.RefUpdateResult.FastForward, update2); Assert.AreEqual(pid, db.Resolve("refs/heads/master")); }