Exemplo n.º 1
0
        public void ParseGithubIssueForAllRemotesLink()
        {
            GitExtLinkDef linkDef = GetGithubIssuesLinkDef();

            linkDef.UseRemotesPattern  = string.Empty;
            linkDef.UseOnlyFirstRemote = false;
            GitRevision revision = new GitRevision(null, "");

            revision.Body = "Merge pull request #3657 from RussKie/tweak_FormRemotes_tooltips";
            IGitRemoteController remoteController = Substitute.For <IGitRemoteController>();

            remoteController.Remotes.Returns(GetDefaultRemotes());
            IEnumerable <GitExtLink> actualLinks   = linkDef.Parse(revision, remoteController);
            IEnumerable <GitExtLink> expectedLinks = new GitExtLink[]
            {
                new GitExtLink()
                {
                    Caption = "Issue 3657",
                    URI     = "https://github.com/jbialobr/gitextensions/issues/3657"
                },
                new GitExtLink()
                {
                    Caption = "Issue 3657",
                    URI     = "https://github.com/gitextensions/gitextensions/issues/3657"
                },
                new GitExtLink()
                {
                    Caption = "Issue 3657",
                    URI     = "https://github.com/russkie/gitextensions/issues/3657"
                }
            };

            actualLinks.Should().Equal(expectedLinks);
        }
Exemplo n.º 2
0
        public void Remove_should_save_definition_to_lowest_settings()
        {
            _parser = new GitExtLinksParser(_repoLocal);
            var definition = new GitExtLinkDef
            {
                Name          = "test",
                SearchPattern = "pattern"
            };

            _parser.AddLinkDef(definition);

            _parser.SaveToSettings();
            _repoLocal.SettingsCache.Save();
            _repoDistributed.SettingsCache.Save();
            _userRoaming.SettingsCache.Save();

            var settings = new RepoDistSettings(null, new GitExtSettingsCache(_level3));
            var parser   = new GitExtLinksParser(settings);

            parser.EffectiveLinkDefs.Count.Should().Be(2);
            var item = parser.EffectiveLinkDefs.Last();

            item.Name.Should().Be(definition.Name);
            item.SearchPattern.Should().Be(definition.SearchPattern);
        }
Exemplo n.º 3
0
        public void Setup()
        {
            _linkDef = GetGithubIssuesLinkDef();

            _revision = new GitRevision(null, "");

            _remoteManager = Substitute.For <IGitRemoteManager>();
            _remoteManager.LoadRemotes(false).Returns(GetDefaultRemotes());
        }
Exemplo n.º 4
0
        private void Add_Click(object sender, EventArgs e)
        {
            GitExtLinkDef newCategory = new GitExtLinkDef();

            newCategory.Name = "<new>";
            newCategory.SearchInParts.Add(GitExtLinkDef.RevisionPart.Message);
            newCategory.Enabled = true;
            parser.AddLinkDef(newCategory);
            ReloadCategories();
            _NO_TRANSLATE_Categories.SelectedItem = newCategory;
            CategoryChanged();
        }
Exemplo n.º 5
0
        private void Add_Click(object sender, EventArgs e)
        {
            GitExtLinkDef newCategory = new GitExtLinkDef();

            newCategory.Name = "<new>";
            newCategory.SearchInParts.Add(GitExtLinkDef.RevisionPart.Message);
            newCategory.RemoteSearchInParts.Add(GitExtLinkDef.RemotePart.URL);
            newCategory.Enabled            = true;
            newCategory.UseRemotesPattern  = "upstream|origin";
            newCategory.UseOnlyFirstRemote = true;
            parser.AddLinkDef(newCategory);
            ReloadCategories();
            _NO_TRANSLATE_Categories.SelectedItem = newCategory;
            CategoryChanged();
        }
Exemplo n.º 6
0
        public void ParseLinkWithEmptyRemotePart()
        {
            _linkDef       = GitExtLinksParser.LoadFromXmlString(GetEmptyRemotePartXmlDef()).First();
            _revision.Body = "Merge pull request #3657 from RussKie/tweak_FormRemotes_tooltips";
            IEnumerable <GitExtLink> expectedLinks = new[]
            {
                new GitExtLink()
                {
                    Caption = "Issue 3657",
                    URI     = "https://github.com/gitextensions/gitextensions/issues/3657"
                }
            };

            var actualLinks = _linkDef.Parse(_revision, _remoteManager);

            actualLinks.Should().Equal(expectedLinks);
        }
Exemplo n.º 7
0
        public void Remove_should_add_definition_to_collection()
        {
            _parser = new GitExtLinksParser(_repoLocal);
            var definition = new GitExtLinkDef
            {
                Name          = "test",
                SearchPattern = "pattern"
            };

            _parser.AddLinkDef(definition);

            var effectiveSettings = _parser.EffectiveLinkDefs;

            // 1 comes from the user roaming settings
            // 3 come from the distributed
            // 2 comes from the local
            effectiveSettings.Count.Should().Be(6);
        }
Exemplo n.º 8
0
        public void ParseLinkWithEmptyRemotePart()
        {
            GitExtLinkDef linkDef  = GitExtLinksParser.LoadFromXmlString(GetEmptyRemotePartXmlDef()).First();
            GitRevision   revision = new GitRevision(null, "");

            revision.Body = "Merge pull request #3657 from RussKie/tweak_FormRemotes_tooltips";
            IGitRemoteController remoteController = Substitute.For <IGitRemoteController>();

            remoteController.Remotes.Returns(GetDefaultRemotes());
            IEnumerable <GitExtLink> actualLinks   = linkDef.Parse(revision, remoteController);
            IEnumerable <GitExtLink> expectedLinks = new GitExtLink[]
            {
                new GitExtLink()
                {
                    Caption = "Issue 3657",
                    URI     = "https://github.com/gitextensions/gitextensions/issues/3657"
                }
            };

            actualLinks.Should().Equal(expectedLinks);
        }