Exemplo n.º 1
0
        private System.Drawing.Rectangle _headerResize; // Cache desired size for commit header

        private void ReloadCommitInfo()
        {
            _RevisionHeader.BackColor = ColorHelper.MakeColorDarker(this.BackColor);

            showContainedInBranchesToolStripMenuItem.Checked                = AppSettings.CommitInfoShowContainedInBranchesLocal;
            showContainedInBranchesRemoteToolStripMenuItem.Checked          = AppSettings.CommitInfoShowContainedInBranchesRemote;
            showContainedInBranchesRemoteIfNoLocalToolStripMenuItem.Checked = AppSettings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            showContainedInTagsToolStripMenuItem.Checked         = AppSettings.CommitInfoShowContainedInTags;
            showMessagesOfAnnotatedTagsToolStripMenuItem.Checked = AppSettings.ShowAnnotatedTagsMessages;

            ResetTextAndImage();

            if (string.IsNullOrEmpty(_revision.Guid))
            {
                return; //is it regular case or should throw an exception
            }
            _RevisionHeader.SelectionTabs = GetRevisionHeaderTabStops();
            _RevisionHeader.Text          = string.Empty;
            _RevisionHeader.Refresh();

            string     error = "";
            CommitData data  = CommitData.CreateFromRevision(_revision);

            if (_revision.Body == null)
            {
                CommitData.UpdateCommitMessage(data, Module, _revision.Guid, ref error);
                _revision.Body = data.Body;
            }

            ThreadPool.QueueUserWorkItem(_ => loadLinksForRevision(_revision));

            if (_sortedRefs == null)
            {
                ThreadPool.QueueUserWorkItem(_ => loadSortedRefs());
            }

            data.ChildrenGuids = _children;
            CommitInformation commitInformation = CommitInformation.GetCommitInfo(data, _linkFactory, CommandClick != null, Module);

            _RevisionHeader.SetXHTMLText(commitInformation.Header);
            _RevisionHeader.Height = GetRevisionHeaderHeight();
            _revisionInfo          = commitInformation.Body;
            updateText();
            LoadAuthorImage(data.Author ?? data.Committer);

            if (AppSettings.CommitInfoShowContainedInBranches)
            {
                ThreadPool.QueueUserWorkItem(_ => loadBranchInfo(_revision.Guid));
            }

            if (AppSettings.ShowAnnotatedTagsMessages)
            {
                ThreadPool.QueueUserWorkItem(_ => loadAnnotatedTagInfo(_revision));
            }

            if (AppSettings.CommitInfoShowContainedInTags)
            {
                ThreadPool.QueueUserWorkItem(_ => loadTagInfo(_revision.Guid));
            }
        }
Exemplo n.º 2
0
        private void ReloadCommitInfo()
        {
            showContainedInBranchesToolStripMenuItem.Checked                = Settings.CommitInfoShowContainedInBranchesLocal;
            showContainedInBranchesRemoteToolStripMenuItem.Checked          = Settings.CommitInfoShowContainedInBranchesRemote;
            showContainedInBranchesRemoteIfNoLocalToolStripMenuItem.Checked = Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            showContainedInTagsToolStripMenuItem.Checked = Settings.CommitInfoShowContainedInTags;

            ResetTextAndImage();
            if (string.IsNullOrEmpty(_revision))
            {
                return;
            }
            _RevisionHeader.Text = string.Empty;
            _RevisionHeader.Refresh();
            CommitInformation commitInformation = CommitInformation.GetCommitInfo(_revision);

            _RevisionHeader.SetXHTMLText(commitInformation.Header);
            splitContainer1.SplitterDistance = _RevisionHeader.GetPreferredSize(new System.Drawing.Size(0, 0)).Height;
            _revisionInfo = commitInformation.Body;
            updateText();
            LoadAuthorImage();

            if (Settings.CommitInfoShowContainedInBranches)
            {
                ThreadPool.QueueUserWorkItem(_ => loadBranchInfo(_revision));
            }

            if (Settings.CommitInfoShowContainedInTags)
            {
                ThreadPool.QueueUserWorkItem(_ => loadTagInfo(_revision));
            }
        }
Exemplo n.º 3
0
        public void GetAllBranchesWhichContainGivenCommitTestReturnsEmptyList()
        {
            var actualResult = CommitInformation.GetAllBranchesWhichContainGivenCommit(new GitModule(""), "fakesha1", false, false);

            Assert.IsNotNull(actualResult);
            Assert.IsTrue(!actualResult.Any());
        }
Exemplo n.º 4
0
        private string GetBranchesWhichContainsThisCommit(string revision, bool showBranchesAsLinks)
        {
            const string remotesPrefix = "remotes/";
            // Include local branches if explicitly requested or when needed to decide whether to show remotes
            bool getLocal = Settings.CommitInfoShowContainedInBranchesLocal ||
                            Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            // Include remote branches if requested
            bool getRemote = Settings.CommitInfoShowContainedInBranchesRemote ||
                             Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            var  branches    = CommitInformation.GetAllBranchesWhichContainGivenCommit(Module, revision, getLocal, getRemote);
            var  links       = new List <string>();
            bool allowLocal  = Settings.CommitInfoShowContainedInBranchesLocal;
            bool allowRemote = getRemote;

            foreach (var branch in branches)
            {
                string noPrefixBranch = branch;
                bool   branchIsLocal;
                if (getLocal && getRemote)
                {
                    // "git branch -a" prefixes remote branches with "remotes/"
                    // It is possible to create a local branch named "remotes/origin/something"
                    // so this check is not 100% reliable.
                    // This shouldn't be a big problem if we're only displaying information.
                    branchIsLocal = !branch.StartsWith(remotesPrefix);
                    if (!branchIsLocal)
                    {
                        noPrefixBranch = branch.Substring(remotesPrefix.Length);
                    }
                }
                else
                {
                    branchIsLocal = !getRemote;
                }

                if ((branchIsLocal && allowLocal) || (!branchIsLocal && allowRemote))
                {
                    string branchText;
                    if (showBranchesAsLinks)
                    {
                        branchText = LinkFactory.CreateBranchLink(noPrefixBranch);
                    }
                    else
                    {
                        branchText = WebUtility.HtmlEncode(noPrefixBranch);
                    }
                    links.Add(branchText);
                }

                if (branchIsLocal && Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal)
                {
                    allowRemote = false;
                }
            }
            if (links.Any())
            {
                return(Environment.NewLine + WebUtility.HtmlEncode(containedInBranches.Text) + " " + links.Join(", "));
            }
            return(Environment.NewLine + WebUtility.HtmlEncode(containedInNoBranch.Text));
        }
Exemplo n.º 5
0
        private string GetBranchesWhichContainsThisCommit(string revision)
        {
            const string remotesPrefix = "remotes/";
            // Include local branches if explicitly requested or when needed to decide whether to show remotes
            bool getLocal = Settings.CommitInfoShowContainedInBranchesLocal ||
                            Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            // Include remote branches if requested
            bool getRemote = Settings.CommitInfoShowContainedInBranchesRemote ||
                             Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            var  branches     = CommitInformation.GetAllBranchesWhichContainGivenCommit(revision, getLocal, getRemote);
            var  branchString = "";
            bool allowLocal   = Settings.CommitInfoShowContainedInBranchesLocal;
            bool allowRemote  = getRemote;

            foreach (var branch in branches)
            {
                string noPrefixBranch = branch;
                bool   branchIsLocal;
                if (getLocal && getRemote)
                {
                    // "git branch -a" prefixes remote branches with "remotes/"
                    // It is possible to create a local branch named "remotes/origin/something"
                    // so this check is not 100% reliable.
                    // This shouldn't be a big problem if we're only displaying information.
                    branchIsLocal = !branch.StartsWith(remotesPrefix);
                    if (!branchIsLocal)
                    {
                        noPrefixBranch = branch.Substring(remotesPrefix.Length);
                    }
                }
                else
                {
                    branchIsLocal = !getRemote;
                }

                if ((branchIsLocal && allowLocal) || (!branchIsLocal && allowRemote))
                {
                    if (branchString != string.Empty)
                    {
                        branchString += ", ";
                    }
                    branchString += noPrefixBranch;
                }

                if (branchIsLocal && Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal)
                {
                    allowRemote = false;
                }
            }
            if (branchString != string.Empty)
            {
                return(Environment.NewLine + HttpUtility.HtmlEncode(containedInBranches.Text + " " + branchString));
            }
            return(Environment.NewLine + HttpUtility.HtmlEncode(containedInNoBranch.Text));
        }
Exemplo n.º 6
0
        public void CanCreateCommitInformationFromFormatedData()
        {
            var commitGuid     = Guid.NewGuid();
            var treeGuid       = Guid.NewGuid();
            var parentGuid1    = Guid.NewGuid().ToString();
            var parentGuid2    = Guid.NewGuid().ToString();
            var authorTime     = DateTime.UtcNow.AddDays(-3);
            var commitTime     = DateTime.UtcNow.AddDays(-2);
            var authorUnixTime = (int)(authorTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;
            var commitUnixTime = (int)(commitTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;

            var revisionProvider = Substitute.For <IGitRevisionProvider>();
            var parent1Rev       = new GitRevision(aModule: null, guid: parentGuid1)
            {
                Subject = "Parent1"
            };
            var parent2Rev = new GitRevision(aModule: null, guid: parentGuid2)
            {
                Subject = "Parent2"
            };

            revisionProvider.GetRevision(parentGuid1, shortFormat: true).Returns(parent1Rev);
            revisionProvider.GetRevision(parentGuid2, shortFormat: true).Returns(parent2Rev);

            var rawData = commitGuid + "\n" +
                          treeGuid + "\n" +
                          parentGuid1 + " " + parentGuid2 + "\n" +
                          "John Doe (Acme Inc) <*****@*****.**>\n" +
                          authorUnixTime + "\n" +
                          "Jane Doe (Acme Inc) <*****@*****.**>\n" +
                          commitUnixTime + "\n" +
                          "\n" +
                          "\tI made a really neato change.\n\n" +
                          "Notes (p4notes):\n" +
                          "\tP4@547123";

            var expectedHeader = "Author:\t\t<a href='mailto:[email protected]'>John Doe (Acme Inc) &lt;[email protected]&gt;</a>" + Environment.NewLine +
                                 "Author date:\t3 days ago (" + LocalizationHelpers.GetFullDateString(authorTime) + ")" + Environment.NewLine +
                                 "Committer:\t<a href='mailto:[email protected]'>Jane Doe (Acme Inc) &lt;[email protected]&gt;</a>" + Environment.NewLine +
                                 "Commit date:\t2 days ago (" + LocalizationHelpers.GetFullDateString(commitTime) + ")" + Environment.NewLine +
                                 "Commit hash:\t" + commitGuid + Environment.NewLine +
                                 "Parent(s):\t<a href='gitext://gotocommit/" + parentGuid1 + "'>" + parentGuid1.Substring(0, 10) + "</a> " + parent1Rev.Subject +
                                 Environment.NewLine +
                                 " \t\t<a href='gitext://gotocommit/" + parentGuid2 + "'>" + parentGuid2.Substring(0, 10) + "</a> " + parent2Rev.Subject;

            var expectedBody = "\nI made a really neato change." + Environment.NewLine + Environment.NewLine +
                               "Notes (p4notes):" + Environment.NewLine +
                               "\tP4@547123";

            var commitData        = CommitData.CreateFromFormatedData(rawData, new GitModule(""));
            var commitInformation = CommitInformation.GetCommitInfo(revisionProvider, commitData, true);

            Assert.AreEqual(expectedHeader, commitInformation.Header);
            Assert.AreEqual(expectedBody, commitInformation.Body);
        }
Exemplo n.º 7
0
        private IList <string> getContainsRevisionBranches()
        {
            if (_containsRevisionBranches == null)
            {
                _containsRevisionBranches = CommitInformation
                                            .GetAllBranchesWhichContainGivenCommit(Module, _containRevison, LocalBranch.Checked, !LocalBranch.Checked)
                                            .Where(a => !a.Equals("(no branch)", StringComparison.OrdinalIgnoreCase)).ToList();
            }

            return(_containsRevisionBranches);
        }
Exemplo n.º 8
0
        private string GetTagsWhichContainsThisCommit(string revision, bool showBranchesAsLinks)
        {
            var tagString = CommitInformation
                            .GetAllTagsWhichContainGivenCommit(Module, revision)
                            .Select(s => showBranchesAsLinks ? LinkFactory.CreateTagLink(s) : WebUtility.HtmlEncode(s)).Join(", ");

            if (!String.IsNullOrEmpty(tagString))
            {
                return(Environment.NewLine + WebUtility.HtmlEncode(containedInTags.Text) + " " + tagString);
            }
            return(Environment.NewLine + WebUtility.HtmlEncode(containedInNoTag.Text));
        }
Exemplo n.º 9
0
        private void ReloadCommitInfo()
        {
            showContainedInBranchesToolStripMenuItem.Checked                = Settings.CommitInfoShowContainedInBranchesLocal;
            showContainedInBranchesRemoteToolStripMenuItem.Checked          = Settings.CommitInfoShowContainedInBranchesRemote;
            showContainedInBranchesRemoteIfNoLocalToolStripMenuItem.Checked = Settings.CommitInfoShowContainedInBranchesRemoteIfNoLocal;
            showContainedInTagsToolStripMenuItem.Checked = Settings.CommitInfoShowContainedInTags;

            ResetTextAndImage();

            if (string.IsNullOrEmpty(_revisionGuid))
            {
                return; //is it regular case or should throw an exception
            }
            _RevisionHeader.SelectionTabs = GetRevisionHeaderTabStops();
            _RevisionHeader.Text          = string.Empty;
            _RevisionHeader.Refresh();

            string     error = "";
            CommitData data  = null;

            if (_revision != null)
            {
                data = CommitData.CreateFromRevision(_revision);
                CommitData.UpdateCommitMessage(data, Module, _revisionGuid, ref error);
            }
            else
            {
                data = CommitData.GetCommitData(Module, _revisionGuid, ref error);
            }
            data.ChildrenGuids = _children;
            CommitInformation commitInformation = CommitInformation.GetCommitInfo(data);

            _RevisionHeader.SetXHTMLText(commitInformation.Header);
            _RevisionHeader.Height = _RevisionHeader.GetPreferredSize(new System.Drawing.Size(0, 0)).Height;
            _revisionInfo          = commitInformation.Body;
            updateText();
            LoadAuthorImage(data.Author ?? data.Committer);

            if (Settings.CommitInfoShowContainedInBranches)
            {
                ThreadPool.QueueUserWorkItem(_ => loadBranchInfo(_revisionGuid));
            }

            if (Settings.CommitInfoShowContainedInTags)
            {
                ThreadPool.QueueUserWorkItem(_ => loadTagInfo(_revisionGuid));
            }
        }
Exemplo n.º 10
0
        private string GetTagsWhichContainsThisCommit(string revision)
        {
            var tagString = "";

            foreach (var tag in CommitInformation.GetAllTagsWhichContainGivenCommit(revision))
            {
                if (tagString != string.Empty)
                {
                    tagString += ", ";
                }
                tagString += tag;
            }

            if (tagString != string.Empty)
            {
                return(Environment.NewLine + HttpUtility.HtmlEncode(containedInTags.Text + " " + tagString));
            }
            return(Environment.NewLine + HttpUtility.HtmlEncode(containedInNoTag.Text));
        }
Exemplo n.º 11
0
        public void CanCreateCommitInformationFromFormatedData()
        {
            LinkFactory linkFactory    = new LinkFactory();
            var         commitGuid     = Guid.NewGuid();
            var         treeGuid       = Guid.NewGuid();
            var         parentGuid1    = Guid.NewGuid().ToString();
            var         parentGuid2    = Guid.NewGuid().ToString();
            var         authorTime     = DateTime.UtcNow.AddDays(-3);
            var         commitTime     = DateTime.UtcNow.AddDays(-2);
            var         authorUnixTime = (int)(authorTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;
            var         commitUnixTime = (int)(commitTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;

            var rawData = commitGuid + "\n" +
                          treeGuid + "\n" +
                          parentGuid1 + " " + parentGuid2 + "\n" +
                          "John Doe (Acme Inc) <*****@*****.**>\n" +
                          authorUnixTime + "\n" +
                          "Jane Doe (Acme Inc) <*****@*****.**>\n" +
                          commitUnixTime + "\n" +
                          "\n" +
                          "\tI made a really neato change.\n\n" +
                          "Notes (p4notes):\n" +
                          "\tP4@547123";

            var expectedHeader = "Author:      <a href='mailto:[email protected]'>John Doe (Acme Inc) &lt;[email protected]&gt;</a>" + Environment.NewLine +
                                 "Author date: 3 days ago (" + LocalizationHelpers.GetFullDateString(authorTime) + ")" + Environment.NewLine +
                                 "Committer:   <a href='mailto:[email protected]'>Jane Doe (Acme Inc) &lt;[email protected]&gt;</a>" + Environment.NewLine +
                                 "Commit date: 2 days ago (" + LocalizationHelpers.GetFullDateString(commitTime) + ")" + Environment.NewLine +
                                 "Commit hash: " + commitGuid + Environment.NewLine +
                                 "Parent(s):   <a href='gitext://gotocommit/" + parentGuid1 + "'>" + parentGuid1.Substring(0, 10) + "</a> <a href='gitext://gotocommit/" + parentGuid2 + "'>" + parentGuid2.Substring(0, 10) + "</a>";

            var expectedBody = "\nI made a really neato change." + Environment.NewLine + Environment.NewLine +
                               "Notes (p4notes):" + Environment.NewLine +
                               "\tP4@547123";

            // TEMP, will be refactored in the follow up refactor
            var commitData        = new CommitDataManager(() => new GitModule("")).CreateFromFormatedData(rawData);
            var commitInformation = CommitInformation.GetCommitInfo(commitData, linkFactory, true);

            Assert.AreEqual(expectedHeader, commitInformation.Header);
            Assert.AreEqual(expectedBody, commitInformation.Body);
        }
Exemplo n.º 12
0
        public void CanCreateCommitInformationFromFormatedData()
        {
            var commitGuid     = Guid.NewGuid();
            var treeGuid       = Guid.NewGuid();
            var parentGuid1    = Guid.NewGuid().ToString();
            var parentGuid2    = Guid.NewGuid().ToString();
            var authorTime     = DateTime.UtcNow.AddDays(-3);
            var commitTime     = DateTime.UtcNow.AddDays(-2);
            var authorUnixTime = (int)(authorTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;
            var commitUnixTime = (int)(commitTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;

            var rawData = commitGuid + "\n" +
                          treeGuid + "\n" +
                          parentGuid1 + " " + parentGuid2 + "\n" +
                          "John Doe (Acme Inc) <*****@*****.**>\n" +
                          authorUnixTime + "\n" +
                          "Jane Doe (Acme Inc) <*****@*****.**>\n" +
                          commitUnixTime + "\n" +
                          "\n" +
                          "\tI made a really neato change.\n\n" +
                          "Notes (p4notes):\n" +
                          "\tP4@547123";

            var expectedHeader = "Author:\t\t<a href='mailto:[email protected]'>John Doe (Acme Inc) &lt;[email protected]&gt;</a>" + Environment.NewLine +
                                 "Author date:\t3 days ago (" + authorTime.ToLocalTime().ToString("ddd MMM dd HH':'mm':'ss yyyy") + ")" + Environment.NewLine +
                                 "Committer:\t<a href='mailto:[email protected]'>Jane Doe (Acme Inc) &lt;[email protected]&gt;</a>" + Environment.NewLine +
                                 "Commit date:\t2 days ago (" + commitTime.ToLocalTime().ToString("ddd MMM dd HH':'mm':'ss yyyy") + ")" + Environment.NewLine +
                                 "Commit hash:\t" + commitGuid + Environment.NewLine +
                                 "Parent(s):\t<a href='gitex://gotocommit/" + parentGuid1 + "'>" + parentGuid1.Substring(0, 10) + "</a> <a href='gitex://gotocommit/" + parentGuid2 + "'>" + parentGuid2.Substring(0, 10) + "</a>";

            var expectedBody = "\n\nI made a really neato change." + Environment.NewLine + Environment.NewLine +
                               "Notes (p4notes):" + Environment.NewLine +
                               "\tP4@547123\n\n";

            var commitData        = CommitData.CreateFromFormatedData(rawData, new GitModule(""));
            var commitInformation = CommitInformation.GetCommitInfo(commitData);

            Assert.AreEqual(expectedHeader, commitInformation.Header);
            Assert.AreEqual(expectedBody, commitInformation.Body);
        }
Exemplo n.º 13
0
        private void Initialize()
        {
            Branches.DisplayMember = "Name";

            if (_containRevison == null)
            {
                if (LocalBranch.Checked)
                {
                    Branches.DataSource = GitModule.Current.GetHeads(false).Select(a => a.Name).ToList();
                }
                else
                {
                    var heads = GitModule.Current.GetHeads(true, true);

                    var remoteHeads = new List <GitHead>();

                    foreach (var head in heads)
                    {
                        if (head.IsRemote && !head.IsTag)
                        {
                            remoteHeads.Add(head);
                        }
                    }

                    Branches.DataSource = remoteHeads.Select(a => a.Name).ToList();
                }
            }
            else
            {
                var branches = CommitInformation
                               .GetAllBranchesWhichContainGivenCommit(_containRevison, LocalBranch.Checked, !LocalBranch.Checked)
                               .Where(a => !a.Equals("(no branch)", StringComparison.OrdinalIgnoreCase));
                Branches.DataSource = branches.ToList();
            }

            Branches.Text = null;
            remoteOptionsPanel.Visible = Remotebranch.Checked;
            rbCreateBranch.Checked     = Settings.CreateLocalBranchForRemote;
        }
        public void CanCreateCommitInformationFromRawData()
        {
            var commitGuid     = Guid.NewGuid();
            var treeGuid       = Guid.NewGuid();
            var parentGuid1    = Guid.NewGuid();
            var parentGuid2    = Guid.NewGuid();
            var authorTime     = DateTime.UtcNow.AddDays(-3);
            var commitTime     = DateTime.UtcNow.AddDays(-2);
            var authorUnixTime = (int)(authorTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;
            var commitUnixTime = (int)(commitTime - new DateTime(1970, 1, 1, 0, 0, 0)).TotalSeconds;

            var rawData = "commit " + commitGuid + "\n" +
                          "tree " + treeGuid + "\n" +
                          "parent " + parentGuid1 + "\n" +
                          "parent " + parentGuid2 + "\n" +
                          "author John Doe (Acme Inc) <*****@*****.**> " + authorUnixTime + " +0100\n" +
                          "committer Jane Doe (Acme Inc) <*****@*****.**> " + commitUnixTime + " +0200\n\n" +
                          "\tI made a really neato change.\n\n" +
                          "Notes (p4notes):\n" +
                          "\tP4@547123";

            var expectedHeader = "Author:\tJohn Doe (Acme Inc) <*****@*****.**>\n" +
                                 "Author date:\t3 days ago (" + authorTime.ToLocalTime().ToString("ddd MMM dd HH':'mm':'ss yyyy") + ")\n" +
                                 "Committer:\tJane Doe (Acme Inc) <*****@*****.**>\n" +
                                 "Commit date:\t2 days ago (" + commitTime.ToLocalTime().ToString("ddd MMM dd HH':'mm':'ss yyyy") + ")\n" +
                                 "Commit hash:\t" + commitGuid;

            var expectedBody = "\n\nI made a really neato change.\n\n" +
                               "Notes (p4notes):\n" +
                               "\tP4@547123\n\n";

            var commitInformation = CommitInformation.CreateFromRawData(rawData);

            Assert.AreEqual(expectedHeader, commitInformation.Header);
            Assert.AreEqual(expectedBody, commitInformation.Body);
        }
Exemplo n.º 15
0
        public void should_to_string_valid_format()
        {
            CommitInformation commitInformation = new CommitInformation
            {
                Hash        = "HelloWorld",
                AddTime     = DateTime.UtcNow,
                CommitTime  = DateTime.UtcNow,
                Comment     = "Fix Jt",
                StoryNumber = "8888",
                Devs        = new List <string> {
                    "zhangsan", "lisi"
                },
                TestFileList = new HashSet <string>
                {
                    "/Test/Tiger-Core-Test/ResourceTests/MyMobilitySpec/ImmigrationMissingInfo/when_get_immigration_missing_info.cs",
                    "/Test/Tiger-Contract-Test-By-Consumer/myMobilityApps/ImmigrationMissingInformationFacts.cs"
                }
            };
            string result = "Hash:" + commitInformation.Hash + "\nAddTime:" + commitInformation.AddTime + "\nCommitTime:" + commitInformation.CommitTime + "\n" +
                            "Devs:" + string.Join(",", commitInformation.Devs.ToArray()) + "\nStoryNumber:" + commitInformation.StoryNumber + "\nComment:" + commitInformation.Comment + "\n" +
                            "TestFileList:\n\t" + string.Join("\n\t", commitInformation.TestFileList.ToArray());

            Assert.Equal(result, commitInformation.ToString());
        }
 public void CanCreateCommitInformationFromFormatedDataThrowsException()
 {
     CommitInformation.GetCommitInfo(null, new LinkFactory(), true);
 }
Exemplo n.º 17
0
 public void CanCreateCommitInformationFromFormatedDataThrowsException()
 {
     Assert.Throws <ArgumentNullException>(() => CommitInformation.GetCommitInfo(null, new LinkFactory(), true));
 }
Exemplo n.º 18
0
 public void CanCreateCommitInformationFromFormatedDataThrowsException()
 {
     CommitInformation.GetCommitInfo(data: null);
 }
Exemplo n.º 19
0
 public void CanCreateCommitInformationFromFormatedDataThrowsException()
 {
     CommitInformation.GetCommitInfo(new GitModule(""), null, true);
 }
Exemplo n.º 20
0
        public void GetCommitInfoTestWhenDataIsNull()
        {
            var actualResult = CommitInformation.GetCommitInfo(new GitModule(""), "fakesha1");

            Assert.AreEqual("Cannot find commit fakesha1", actualResult.Header);
        }