コード例 #1
0
        public void DiffKindRevisionTests_AL_1()
        {
            IList <GitRevision> revisions = null;
            string extraDiffArgs, firstRevision, secondRevision;

            revisions = new List <GitRevision> {
                new GitRevision(_module, "HEAD")
            };
            Assert.AreEqual("", DiffKindRevision.Get(revisions, DiffWithRevisionKind.DiffALocal, out extraDiffArgs, out firstRevision, out secondRevision), "null rev");
            Assert.AreEqual("HEAD^", firstRevision, "first");
            Assert.AreEqual(null, secondRevision, "second");
        }
コード例 #2
0
        public void DiffKindRevisionTests_AB_1p()
        {
            IList <GitRevision> revisions = null;
            string extraDiffArgs, firstRevision, secondRevision;

            revisions = new List <GitRevision> {
                new GitRevision(_module, "HEAD")
            };
            revisions[0].ParentGuids = new string[] { "parent" };
            Assert.AreEqual("", DiffKindRevision.Get(revisions, DiffWithRevisionKind.DiffAB, out extraDiffArgs, out firstRevision, out secondRevision), "null rev");
            Assert.AreEqual("parent", firstRevision, "first");
            Assert.AreEqual("HEAD", secondRevision, "second");
        }
コード例 #3
0
        public void DiffKindRevisionTests_error()
        {
            IList <GitRevision> revisions = null;
            string extraDiffArgs, firstRevision, secondRevision;

            Assert.AreNotEqual("", DiffKindRevision.Get(revisions, DiffWithRevisionKind.DiffAB, out extraDiffArgs, out firstRevision, out secondRevision), "null rev");
            revisions = new List <GitRevision> {
                null
            };
            Assert.AreNotEqual("", DiffKindRevision.Get(revisions, DiffWithRevisionKind.DiffAB, out extraDiffArgs, out firstRevision, out secondRevision), "1 null rev");
            revisions = new List <GitRevision> {
                null, null
            };
            Assert.AreNotEqual("", DiffKindRevision.Get(revisions, DiffWithRevisionKind.DiffAB, out extraDiffArgs, out firstRevision, out secondRevision), "2 null rev");
        }
コード例 #4
0
        public static void OpenWithDifftool(this RevisionGrid grid, string fileName, string oldFileName, DiffWithRevisionKind diffKind)
        {
            //Note: Order in revisions is that first clicked is last in array
            string extraDiffArgs;
            string firstRevision;
            string secondRevision;

            string error = DiffKindRevision.Get(grid.GetSelectedRevisions(), diffKind, out extraDiffArgs, out firstRevision, out secondRevision);

            if (!string.IsNullOrEmpty(error))
            {
                MessageBox.Show(grid, error);
            }
            else
            {
                string output = grid.Module.OpenWithDifftool(fileName, oldFileName, firstRevision, secondRevision, extraDiffArgs);
                if (!string.IsNullOrEmpty(output))
                {
                    MessageBox.Show(grid, output);
                }
            }
        }