/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/EditorFeatures/VisualBasicTest/ChangeSignature/ChangeSignature_CheckAllSignatureChanges.vb
164 строки
6 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.ChangeSignature Imports Microsoft.CodeAnalysis.Editor.UnitTests.Extensions Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.UnitTests.ChangeSignature <Trait(Traits.Feature, Traits.Features.ChangeSignature)> Partial Public Class ChangeSignatureTests Inherits AbstractChangeSignatureTests <Theory> <MemberData(NameOf(AbstractChangeSignatureTests.GetAllSignatureSpecificationsForTheory), New Integer() {1, 3, 2, 0}, MemberType:=GetType(AbstractChangeSignatureTests))> Public Async Function TestAllSignatureChanges_1This_3Regular_2Default(totalParameters As Integer, signature As Integer()) As Task Dim markup = <Text><![CDATA[ Option Strict On Module Program ''' <summary> ''' See <see cref="M(String, Integer, String, Boolean, Integer, String)"/> ''' </summary> ''' <param name="o">o!</param> ''' <param name="a">a!</param> ''' <param name="b">b!</param> ''' <param name="c">c!</param> ''' <param name="x">x!</param> ''' <param name="y">y!</param> <System.Runtime.CompilerServices.Extension> Sub $$M(ByVal o As String, a As Integer, b As String, c As Boolean, Optional x As Integer = 0, Optional y As String = "Zero") Dim t = "Test" M(t, 1, "Two", True, 3, "Four") t.M(1, "Two", True, 3, "Four") M(t, 1, "Two", True, 3) M(t, 1, "Two", True) M(t, 1, "Two", True, 3, y:="Four") M(t, 1, "Two", c:=True) M(t, 1, "Two", True, y:="Four") M(t, 1, "Two", True, x:=3) M(t, 1, "Two", True, y:="Four", x:=3) M(t, 1, y:="Four", x:=3, b:="Two", c:=True) M(t, y:="Four", x:=3, c:=True, b:="Two", a:=1) M(y:="Four", x:=3, c:=True, b:="Two", a:=1, o:=t) End Sub End Module ]]></Text>.NormalizedValue() Await TestChangeSignatureViaCommandAsync( LanguageNames.VisualBasic, markup, expectedSuccess:=True, updatedSignature:=signature, totalParameters:=totalParameters, verifyNoDiagnostics:=True) End Function <Theory> <MemberData(NameOf(AbstractChangeSignatureTests.GetAllSignatureSpecificationsForTheory), New Integer() {1, 3, 0, 1}, MemberType:=GetType(AbstractChangeSignatureTests))> Public Async Function TestAllSignatureChanges_1This_3Regular_1ParamArray(totalParameters As Integer, signature As Integer()) As Task Dim markup = <Text><![CDATA[ Option Strict On Module Program <System.Runtime.CompilerServices.Extension> Sub $$M(ByVal o As String, a As Integer, b As Boolean, c As Integer, ParamArray p As Integer()) Dim t = "Test" M(t, 1, True, 3, {4, 5}) t.M(1, True, 3, {4, 5}) M(t, 1, True, 3, 4, 5) t.M(1, True, 3, 4, 5) M(t, 1, True, 3) t.M(1, True, 3) End Sub End Module ]]></Text>.NormalizedValue() Await TestChangeSignatureViaCommandAsync( LanguageNames.VisualBasic, markup, expectedSuccess:=True, updatedSignature:=signature, totalParameters:=totalParameters, verifyNoDiagnostics:=True) End Function <Theory> <MemberData(NameOf(AbstractChangeSignatureTests.GetAllSignatureSpecificationsForTheory), New Integer() {0, 3, 0, 0}, MemberType:=GetType(AbstractChangeSignatureTests))> Public Async Function TestAllSignatureChanges_Delegate_3(totalParameters As Integer, signature As Integer()) As Task Dim markup = <Text><![CDATA[ Option Strict On Class C ''' <summary> ''' <see cref="MyDelegate.Invoke(Integer, String, Boolean)"/> ''' <see cref="MyDelegate.BeginInvoke(Integer, String, Boolean, AsyncCallback, Object)"/> ''' </summary> ''' <param name="x"></param> ''' <param name="y"></param> ''' <param name="z"></param> Delegate Sub $$MyDelegate(x As Integer, y As String, z As Boolean) Event MyEvent As MyDelegate Custom Event MyEvent2 As MyDelegate AddHandler(value As MyDelegate) End AddHandler RemoveHandler(value As MyDelegate) End RemoveHandler RaiseEvent(x As Integer, y As String, z As Boolean) End RaiseEvent End Event Sub M() RaiseEvent MyEvent(1, "Two", True) RaiseEvent MyEvent2(1, "Two", True) AddHandler MyEvent, AddressOf MyEventHandler AddHandler MyEvent2, AddressOf MyEventHandler2 Dim x As MyDelegate = Nothing x(1, "Two", True) x.Invoke(1, "Two", True) x.BeginInvoke(1, "Two", True, Nothing, New Object()) End Sub ''' <param name="a"></param> ''' <param name="b"></param> ''' <param name="c"></param> Sub MyEventHandler(a As Integer, b As String, c As Boolean) End Sub Sub MyEventHandlerEmpty() End Sub Sub MyEventHandler2(a As Integer, b As String, c As Boolean) End Sub Sub MyEventHandler2Empty() End Sub Sub MyOtherEventHandler(a As Integer, b As String, c As Boolean) Handles Me.MyEvent End Sub Sub MyOtherEventHandler2(a As Integer, b As String, c As Boolean) Handles Me.MyEvent2 End Sub End Class ]]></Text>.NormalizedValue() Await TestChangeSignatureViaCommandAsync( LanguageNames.VisualBasic, markup, expectedSuccess:=True, updatedSignature:=signature, totalParameters:=totalParameters, verifyNoDiagnostics:=True) End Function End Class End Namespace