static void Log(string oid) { oid = OidConverter(oid); IDictionary <string, IList <string> > refs = new Dictionary <string, IList <string> >(); foreach (var(refname, @ref) in DataProvider.GetAllRefs()) { if (refs.ContainsKey(@ref.Value)) { refs[@ref.Value].Add(refname); } else { refs[@ref.Value] = new List <string>() { refname }; } } foreach (var objectId in CommitOperation.GetCommitHistory(new string[] { oid })) { var commit = CommitOperation.GetCommit(objectId); PrintCommit(objectId, commit, refs.ContainsKey(objectId) ? refs[objectId] : null); } }
public void CommitHistoryTest() { string commitMessage1 = string.Join("\n", new[] { "tree tree-oid", "parent parent-oid", "", "this is second commit", }); string commitMessage2 = string.Join("\n", new[] { "tree tree-oid", "", "this is first commit", }); this.dataProvider.Setup(d => d.GetObject("foo-oid", "commit")).Returns(commitMessage1.Encode()); this.dataProvider.Setup(d => d.GetObject("parent-oid", "commit")).Returns( commitMessage2.Encode()); var history = commitOperation.GetCommitHistory(new string[] { "foo-oid" }); CollectionAssert.AreEqual(new string[] { "foo-oid", "parent-oid" }, history.ToArray()); dataProvider.VerifyAll(); }