/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/EditorFeatures/VisualBasicTest/SignatureHelp/GenericNameSignatureHelpProviderTests.vb
924 строки
32 KB
Cyrus Najmabadi
Organize VB imports
27 июн 2025, 21:53
27 июн 2025, 21:53
e9c47fd
Код
Авторство
О чём код?
' Licensed to the .NET Foundation under one or more agreements. ' The .NET Foundation licenses this file to you under the MIT license. ' See the LICENSE file in the project root for more information. Imports Microsoft.CodeAnalysis.Editor.UnitTests.SignatureHelp Imports Microsoft.CodeAnalysis.VisualBasic.SignatureHelp Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.UnitTests.SignatureHelp <Trait(Traits.Feature, Traits.Features.SignatureHelp)> Public Class GenericNameSignatureHelpProviderTests Inherits AbstractVisualBasicSignatureHelpProviderTests Friend Overrides Function GetSignatureHelpProviderType() As Type Return GetType(GenericNameSignatureHelpProvider) End Function #Region "Declaring generic type objects" <Fact> Public Async Function TestDeclaringGenericTypeWith1ParameterUnterminated() As Task Dim markup = <a><![CDATA[ Class G(Of T) End Class Class C Sub Goo() Dim q As [|G(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWith1ParameterTerminated() As Task Dim markup = <a><![CDATA[ Class G(Of T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWith2ParametersOn1() As Task Dim markup = <a><![CDATA[ Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWith2ParametersOn2() As Task Dim markup = <a><![CDATA[ Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of Integer, $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", String.Empty, String.Empty, currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWith2ParametersOn1XmlDoc() As Task Dim markup = <a><![CDATA[ ''' <summary> ''' SummaryG ''' </summary> ''' <typeparam name="S">ParamS. Also see <see cref="C"/></typeparam> ''' <typeparam name="T">ParamT</typeparam> Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", "SummaryG", "ParamS. Also see C", currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWith2ParametersOn2XmlDoc() As Task Dim markup = <a><![CDATA[ ''' <summary> ''' SummaryG ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT. Also see <see cref="C"/></typeparam> Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of Integer, $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", "SummaryG", "ParamT. Also see C", currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact, WorkItem("http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/827031")> Public Async Function TestDeclaringGenericTypeWith2ParametersOn1XmlDocReferencingTypeParams() As Task Dim markup = <a><![CDATA[ ''' <summary> ''' SummaryG ''' </summary> ''' <typeparam name="S">ParamS. Also see <see cref="T"/></typeparam> ''' <typeparam name="T">ParamT. Also see <see cref="S"/></typeparam> Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", "SummaryG", "ParamS. Also see T", currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact, WorkItem("http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/827031")> Public Async Function TestDeclaringGenericTypeWith2ParametersOn2XmlDocReferencingTypeParams() As Task Dim markup = <a><![CDATA[ ''' <summary> ''' SummaryG ''' </summary> ''' <typeparam name="S">ParamS. Also see <see cref="T"/></typeparam> ''' <typeparam name="T">ParamT. Also see <see cref="S"/></typeparam> Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of Integer, $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", "SummaryG", "ParamT. Also see S", currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function #End Region #Region "Constraints on generic types" <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsStructure() As Task Dim markup = <a><![CDATA[ Class G(Of S As Structure, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As Structure, T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsClass() As Task Dim markup = <a><![CDATA[ Class G(Of S As Class, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As Class, T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsNew() As Task Dim markup = <a><![CDATA[ Class G(Of S As New, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As New, T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsBase() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass End Class Class G(Of S As SomeBaseClass, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As SomeBaseClass, T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsBaseGenericWithGeneric() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass(Of X) End Class Class G(Of S As SomeBaseClass(Of S), T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As SomeBaseClass(Of S), T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsBaseGenericWithNonGeneric() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass(Of X) End Class Class G(Of S As SomeBaseClass(Of Integer), T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As SomeBaseClass(Of Integer), T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsBaseGenericWithGenericNested() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass(Of X) End Class Class G(Of S As SomeBaseClass(Of SomeBaseClass(Of S)), T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As SomeBaseClass(Of SomeBaseClass(Of S)), T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsDeriveFromAnotherGenericParameter() As Task Dim markup = <a><![CDATA[ Class G(Of S As T, T) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As T, T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsMixed1() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass End Class Interface IGoo End Interface ''' <summary> ''' SummaryG ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT</typeparam> Class G(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New}) End Class Class C Sub Goo() Dim q As [|G(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New})", "SummaryG", "ParamS", currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestDeclaringGenericTypeWithConstraintsMixed2() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass End Class Interface IGoo End Interface ''' <summary> ''' SummaryG ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT</typeparam> Class G(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New}) End Class Class C Sub Goo() Dim q As [|G(Of Bar, $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New})", "SummaryG", "ParamT", currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function #End Region #Region "Generic member invocation" <Fact> Public Async Function TestInvokingGenericMethodWith1ParameterUnterminated() As Task Dim markup = <a><![CDATA[ Class C Function Goo(Of T)(arg As T) As T End Function Sub Bar() [|Goo(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of T)(arg As T) As T", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestInvokingGenericMethodWith1ParameterTerminated() As Task Dim markup = <a><![CDATA[ Class C Function Goo(Of T)(arg As T) As T End Function Sub Bar() [|Goo(Of $$|]) End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of T)(arg As T) As T", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestInvokingGenericMethodWith2ParametersOn1() As Task Dim markup = <a><![CDATA[ Class C Function Goo(Of S, T)(arg As T) As S End Function Sub Bar() [|Goo(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of S, T)(arg As T) As S", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestInvokingGenericMethodWith2ParametersOn2() As Task Dim markup = <a><![CDATA[ Class C Function Goo(Of S, T)(arg As T) As T End Function Sub Bar() [|Goo(Of Integer, $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of S, T)(arg As T) As T", String.Empty, String.Empty, currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestInvokingGenericMethodWith2ParametersOn1XmlDoc() As Task Dim markup = <a><![CDATA[ Class C ''' <summary> ''' GooSummary ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT</typeparam> Function Goo(Of S, T)(arg As T) As S End Function Sub Bar() [|Goo(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of S, T)(arg As T) As S", "GooSummary", "ParamS", currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestInvokingGenericMethodWith2ParametersOn2XmlDoc() As Task Dim markup = <a><![CDATA[ Class C ''' <summary> ''' GooSummary ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT</typeparam> Function Goo(Of S, T)(arg As T) As S End Function Sub Bar() [|Goo(Of Integer, $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of S, T)(arg As T) As S", "GooSummary", "ParamT", currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact, WorkItem("http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/544124")> <WorkItem("http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/544123")> <WorkItem("http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/684631")> Public Async Function TestCallingGenericExtensionMethod() As Task Dim markup = <a><![CDATA[ Imports System Class D End Class Module ExtnMethods <Runtime.CompilerServices.Extension()> Function Goo(Of S, T)(ByRef dClass As D, objS as S, objT As T) As S End Function End Module Class C Sub Bar() Dim obj As D = Nothing obj.[|Goo(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem($"<{VBFeaturesResources.Extension}> D.Goo(Of S, T)(objS As S, objT As T) As S", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function #End Region #Region "Constraints on generic methods" <Fact> Public Async Function TestInvokingGenericMethodTypeWithConstraintsMixed1() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass End Class Interface IGoo End Interface Class C ''' <summary> ''' GooSummary ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT</typeparam> Function Goo(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New})(objS As S, objT As T) As T End Function Sub Bar() [|Goo(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New})(objS As S, objT As T) As T", "GooSummary", "ParamS", currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems) End Function <Fact> Public Async Function TestInvokingGenericMethodWithConstraintsMixed2() As Task Dim markup = <a><![CDATA[ Class SomeBaseClass End Class Interface IGoo End Interface Class C ''' <summary> ''' GooSummary ''' </summary> ''' <typeparam name="S">ParamS</typeparam> ''' <typeparam name="T">ParamT</typeparam> Function Goo(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New})(objS As S, objT As T) As T End Function Sub Bar() [|Goo(Of Bas, $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of S As {SomeBaseClass, New}, T As {Class, S, IGoo, New})(objS As S, objT As T) As T", "GooSummary", "ParamT", currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems) End Function #End Region #Region "Trigger tests" <Fact> Public Async Function TestInvocationOnTriggerSpace() As Task Dim markup = <a><![CDATA[ Class G(Of T) End Class Class C Sub Goo() Dim q As [|G(Of $$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestAsync(markup, expectedOrderedItems, usePreviousCharAsTrigger:=True) End Function <Fact> Public Async Function TestInvocationOnTriggerComma() As Task Dim markup = <a><![CDATA[ Class G(Of S, T) End Class Class C Sub Goo() Dim q As [|G(Of Integer,$$ |]End Sub End Class ]]></a>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("G(Of S, T)", String.Empty, String.Empty, currentParameterIndex:=1)) Await TestAsync(markup, expectedOrderedItems, usePreviousCharAsTrigger:=True) End Function <Fact> Public Sub TestTriggerCharacters() Dim expectedTriggerCharacters() As Char = {","c, " "c} Dim unexpectedTriggerCharacters() As Char = {"["c, "<"c, "("c} VerifyTriggerCharacters(expectedTriggerCharacters, unexpectedTriggerCharacters) End Sub #End Region #Region "EditorBrowsable tests" <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericMethod_BrowsableAlways() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim cc As C cc.Goo(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ Public Class C <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Always)> Public Sub Goo(Of T)(x As T) End Sub End Class ]]></Text>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of T)(x As T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=expectedOrderedItems, expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic) End Function <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericMethod_BrowsableNever() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim cc As C cc.Goo(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ Public Class C <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)> Public Sub Goo(Of T)(x As T) End Sub End Class ]]></Text>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of T)(x As T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=New List(Of SignatureHelpTestItem), expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic) End Function <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericMethod_BrowsableAdvanced() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim cc As C cc.Goo(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ Public Class C <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Advanced)> Public Sub Goo(Of T)(x As T) End Sub End Class ]]></Text>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C.Goo(Of T)(x As T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=expectedOrderedItems, expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic, hideAdvancedMembers:=False) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=New List(Of SignatureHelpTestItem), expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic, hideAdvancedMembers:=True) End Function <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericMethod_BrowsableMixed() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim cc As C cc.Goo(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ Public Class C <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Always)> Public Sub Goo(Of T)(x As T) End Sub <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)> Public Sub Goo(Of T, U)(x As T, y As U) End Sub End Class ]]></Text>.Value Dim expectedOrderedItemsMetadataReference = New List(Of SignatureHelpTestItem)() expectedOrderedItemsMetadataReference.Add(New SignatureHelpTestItem("C.Goo(Of T)(x As T)", String.Empty, String.Empty, currentParameterIndex:=0)) Dim expectedOrderedItemsSameSolution = New List(Of SignatureHelpTestItem)() expectedOrderedItemsSameSolution.Add(New SignatureHelpTestItem("C.Goo(Of T)(x As T)", String.Empty, String.Empty, currentParameterIndex:=0)) expectedOrderedItemsSameSolution.Add(New SignatureHelpTestItem("C.Goo(Of T, U)(x As T, y As U)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=expectedOrderedItemsMetadataReference, expectedOrderedItemsSameSolution:=expectedOrderedItemsSameSolution, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic) End Function <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericType_BrowsableAlways() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim c As C(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Always)> Public Class C(Of T) End Class ]]></Text>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C(Of T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=expectedOrderedItems, expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic) End Function <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericType_BrowsableNever() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim c As C(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)> Public Class C(Of T) End Class ]]></Text>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C(Of T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=New List(Of SignatureHelpTestItem)(), expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic) End Function <Fact, WorkItem(7336, "DevDiv_Projects/Roslyn")> Public Async Function TestEditorBrowsable_GenericType_BrowsableAdvanced() As Task Dim markup = <Text><![CDATA[ Class Program Sub M() Dim c As C(Of $$ End Sub End Class ]]></Text>.Value Dim referencedCode = <Text><![CDATA[ <System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Advanced)> Public Class C(Of T) End Class ]]></Text>.Value Dim expectedOrderedItems = New List(Of SignatureHelpTestItem)() expectedOrderedItems.Add(New SignatureHelpTestItem("C(Of T)", String.Empty, String.Empty, currentParameterIndex:=0)) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=New List(Of SignatureHelpTestItem)(), expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic, hideAdvancedMembers:=True) Await TestSignatureHelpInEditorBrowsableContextsAsync(markup:=markup, referencedCode:=referencedCode, expectedOrderedItemsMetadataReference:=expectedOrderedItems, expectedOrderedItemsSameSolution:=expectedOrderedItems, sourceLanguage:=LanguageNames.VisualBasic, referencedLanguage:=LanguageNames.VisualBasic, hideAdvancedMembers:=False) End Function #End Region End Class End Namespace