public void test009_CreateCommitOldFormat() { writeTrashFile(".git/config", "[core]\n" + "legacyHeaders=1\n"); db.Config.load(); Assert.AreEqual(true, db.Config.getBoolean("core", "legacyHeaders", false)); var t = new Core.Tree(db); FileTreeEntry f = t.AddFile("i-am-a-file"); writeTrashFile(f.Name, "and this is the data in me\n"); t.Accept(new WriteTree(trash, db), TreeEntry.MODIFIED_ONLY); Assert.AreEqual(ObjectId.FromString("00b1f73724f493096d1ffa0b0f1f1482dbb8c936"), t.TreeId); var c = new Core.Commit(db) { Author = (new PersonIdent(author, 1154236443000L, -4 * 60)), Committer = (new PersonIdent(committer, 1154236443000L, -4 * 60)), Message = ("A Commit\n"), TreeEntry = t }; Assert.AreEqual(t.TreeId, c.TreeId); c.Save(); ObjectId cmtid = ObjectId.FromString("803aec4aba175e8ab1d666873c984c0308179099"); Assert.AreEqual(cmtid, c.CommitId); // Verify the commit we just wrote is in the correct format. var xis = new XInputStream(new FileStream(db.ToFile(cmtid).FullName, System.IO.FileMode.Open, FileAccess.Read)); try { Assert.AreEqual(0x78, xis.ReadUInt8()); Assert.AreEqual(0x9c, xis.ReadUInt8()); Assert.IsTrue(0x789c % 31 == 0); } finally { xis.Close(); } // Verify we can Read it. Core.Commit c2 = db.MapCommit(cmtid); Assert.IsNotNull(c2); Assert.AreEqual(c.Message, c2.Message); Assert.AreEqual(c.TreeId, c2.TreeId); Assert.AreEqual(c.Author, c2.Author); Assert.AreEqual(c.Committer, c2.Committer); }
public void test009_CreateCommitOldFormat() { writeTrashFile(".git/config", "[core]\n" + "legacyHeaders=1\n"); db.Config.load(); Assert.AreEqual(true, db.Config.getBoolean("core", "legacyHeaders", false)); var t = new Core.Tree(db); FileTreeEntry f = t.AddFile("i-am-a-file"); writeTrashFile(f.Name, "and this is the data in me\n"); t.Accept(new WriteTree(trash, db), TreeEntry.MODIFIED_ONLY); Assert.AreEqual(ObjectId.FromString("00b1f73724f493096d1ffa0b0f1f1482dbb8c936"), t.TreeId); var c = new Core.Commit(db) { Author = (new PersonIdent(author, 1154236443000L, -4*60)), Committer = (new PersonIdent(committer, 1154236443000L, -4*60)), Message = ("A Commit\n"), TreeEntry = t }; Assert.AreEqual(t.TreeId, c.TreeId); c.Save(); ObjectId cmtid = ObjectId.FromString("803aec4aba175e8ab1d666873c984c0308179099"); Assert.AreEqual(cmtid, c.CommitId); // Verify the commit we just wrote is in the correct format. var xis = new XInputStream(new FileStream(db.ToFile(cmtid).FullName, System.IO.FileMode.Open, FileAccess.Read)); try { Assert.AreEqual(0x78, xis.ReadUInt8()); Assert.AreEqual(0x9c, xis.ReadUInt8()); Assert.IsTrue(0x789c % 31 == 0); } finally { xis.Close(); } // Verify we can Read it. Core.Commit c2 = db.MapCommit(cmtid); Assert.IsNotNull(c2); Assert.AreEqual(c.Message, c2.Message); Assert.AreEqual(c.TreeId, c2.TreeId); Assert.AreEqual(c.Author, c2.Author); Assert.AreEqual(c.Committer, c2.Committer); }