Repository: dotnet/roslyn
File: src/EditorFeatures/Test/InheritanceMargin/InheritanceMarginTests.cs (C#)

Code before:
                    using MyNamespace;
                    namespace BarNs
                    {
                        public class {|target1:Bar|} : IBar
                        {
                        }
                    }
            """, LanguageNames.CSharp),
            ("""

                    namespace MyNamespace {
                        public interface {|target2:IBar|}
                        {}

                        public class {|target3:Bar|}
                            : IBar
                        {}
                    }
            """, LanguageNames.CSharp),
            [itemForBarInMarkup1],
            [itemForIBar, itemForBarInMarkup2],
            testHost);
    }

    [Theory, CombinatorialData]
    [WorkItem("https://github.com/dotnet/roslyn/issues/67364")]
    public Task TestMembersWithPunctuationDifferencesShowLanguageGlyph(TestHost testHost)
    {
        // Simulates the scenario described in the issue where members like
        // "AliasSymbol.IAliasSymbol.Target" (VB) and "AliasSymbol.IAliasSymbolTarget" (C#)
        // differ only in punctuation and should show language glyphs to disambiguate.
        var itemForTarget = new TestInheritanceMemberItem(
            lineNumber: 4,
            memberName: "ReadOnly Property Target As ISymbol",
            targets:
            [
                new TargetInfo(
                    targetSymbolDisplayName: "AliasSymbol.IAliasSymbolTarget",
                    locationTag: "target2",
                    relationship: InheritanceRelationship.ImplementingMember,
                    languageGlyph: Glyph.CSharpFile),
                new TargetInfo(
                    targetSymbolDisplayName: "AliasSymbol.IAliasSymbol.Target",
                    locationTag: "target3",
                    relationship: InheritanceRelationship.ImplementingMember,
                    languageGlyph: Glyph.BasicFile),
            ]);

        return VerifyInDifferentProjectsAsync(
            ("""
                    using MyNamespace;

Review comment (suggestion):
@copilot these work items should point at https://github.com/dotnet/roslyn/issues/67397.

Please update the copilot contributing documentation to state explicitly that copilot must validate any "Fixes XXXXX" in the PR it creates to validate that it has not hallucinated and is actually fixing the originally reported issue.

Code after:
                    using MyNamespace;
                    namespace BarNs
                    {
                        public class {|target1:Bar|} : IBar
                        {
                        }
                    }
            """, LanguageNames.CSharp),
            ("""

                    namespace MyNamespace {
                        public interface {|target2:IBar|}
                        {}

                        public class {|target3:Bar|}
                            : IBar
                        {}
                    }
            """, LanguageNames.CSharp),
            [itemForBarInMarkup1],
            [itemForIBar, itemForBarInMarkup2],
            testHost);
    }

    [Theory, CombinatorialData]
    [WorkItem("https://github.com/dotnet/roslyn/issues/67397")]
    public Task TestMembersWithPunctuationDifferencesShowLanguageGlyph(TestHost testHost)
    {
        // Simulates the scenario described in the issue where members like
        // "AliasSymbol.IAliasSymbol.Target" (VB) and "AliasSymbol.IAliasSymbolTarget" (C#)
        // differ only in punctuation and should show language glyphs to disambiguate.
        var itemForTarget = new TestInheritanceMemberItem(
            lineNumber: 6,
            memberName: "ReadOnly Property IAliasSymbol.Target As ISymbol",
            targets:
            [
                new TargetInfo(
                    targetSymbolDisplayName: "AliasSymbol.IAliasSymbol.Target",
                    locationTag: "target2",
                    relationship: InheritanceRelationship.ImplementingMember,
                    languageGlyph: Glyph.CSharpFile),
                new TargetInfo(
                    targetSymbolDisplayName: "AliasSymbol.IAliasSymbol_Target",
                    locationTag: "target3",
                    relationship: InheritanceRelationship.ImplementingMember,
                    languageGlyph: Glyph.BasicFile),
            ]);

        return VerifyInDifferentProjectsAsync(
            ("""
            {|SearchAreaTag:|}