/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/EditorFeatures/Test2/IntelliSense/VisualBasicCompletionCommandHandlerTests_InternalsVisibleTo.vb
570 строк
29 KB
Cyrus Najmabadi
Apply test attributes consistently
12 сен 2022, 08:59
12 сен 2022, 08:59
45dee7d
Код
Авторство
О чём код?
' 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. Namespace Microsoft.CodeAnalysis.Editor.UnitTests.IntelliSense <[UseExportProvider]> <Trait(Traits.Feature, Traits.Features.Completion)> Public Class VisualBasicCompletionCommandHandlerTests_InternalsVisibleTo <WpfFact> Public Async Function CodeCompletionContainsOtherAssembliesOfSolution() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary2"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary3"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsContainAll("ClassLibrary1", "ClassLibrary2", "ClassLibrary3") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsOtherAssemblyIfAttributeSuffixIsPresent() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleToAttribute("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsContainAll("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionIsTriggeredWhenDoubleQuoteIsEntered() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo($$ ]]> </Document> </Project> </Workspace>) Await state.AssertNoCompletionSession() state.SendTypeChars(""""c) Await state.AssertCompletionItemsContainAll("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionIsEmptyUntilDoubleQuotesAreEntered() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo$$ ]]> </Document> </Project> </Workspace>) Await state.AssertNoCompletionSession() state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1") state.SendTypeChars("("c) state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1") state.SendTypeChars(""""c) Await state.AssertCompletionItemsContainAll("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionIsTriggeredWhenCharacterIsEnteredAfterOpeningDoubleQuote() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$")> ]]> </Document> </Project> </Workspace>) Await state.AssertNoCompletionSession() state.SendTypeChars("a"c) Await state.AssertCompletionItemsContainAll("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionIsNotTriggeredWhenCharacterIsEnteredThatIsNotRightBesideTheOpeniningDoubleQuote() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("a$$")> ]]> </Document> </Project> </Workspace>) Await state.AssertNoCompletionSession() state.SendTypeChars("b"c) Await state.AssertNoCompletionSession() End Using End Function <WpfFact> Public Async Function CodeCompletionIsNotTriggeredWhenDoubleQuoteIsEnteredAtStartOfFile() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb">$$ </Document> </Project> </Workspace>) Await state.AssertNoCompletionSession() state.SendTypeChars("a"c) Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionIsNotTriggeredByArrayElementAccess() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ Namespace A Public Class C Public Sub M() Dim d = New System.Collections.Generic.Dictionary(Of String, String)() Dim v = d$$ End Sub End Class End Namespace ]]> </Document> </Project> </Workspace>) Dim AssertNoCompletionAndCompletionDoesNotContainClassLibrary1 As Func(Of Task) = Async Function() Await state.AssertNoCompletionSession() state.SendInvokeCompletionList() Await state.AssertSessionIsNothingOrNoCompletionItemLike("ClassLibrary1") End Function Await AssertNoCompletionAndCompletionDoesNotContainClassLibrary1() state.SendTypeChars("("c) Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1") state.SendTypeChars(""""c) Await AssertNoCompletionAndCompletionDoesNotContainClassLibrary1() End Using End Function Private Shared Async Function AssertCompletionListHasItems(code As String, hasItems As Boolean) As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"> Imports System.Runtime.CompilerServices Imports System.Reflection <%= code %> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() If hasItems Then Await state.AssertCompletionItemsContainAll("ClassLibrary1") Else Await state.AssertSessionIsNothingOrNoCompletionItemLike("ClassLibrary1") End If End Using End Function <WpfFact> Public Async Function AssertCompletionListHasItems_AfterSingleDoubleQuoteAndClosing() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""$$)>", True) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_AfterText() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""Test$$)>", True) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfCursorIsInSecondParameter() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""Test"", ""$$", True) End Function <WpfFact> Public Async Function AssertCompletionListHasNoItems_IfCursorIsClosingDoubleQuote1() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""Test""$$", False) End Function <WpfFact> Public Async Function AssertCompletionListHasNoItems_IfCursorIsClosingDoubleQuote2() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""""$$", False) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfNamedParameterIsPresent() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""$$, AllInternalsVisible:=True)>", True) End Function <WpfFact> Public Async Function AssertCompletionListHasNoItems_IfNumberIsEntered() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(1$$2)>", False) End Function <WpfFact> Public Async Function AssertCompletionListHasNoItems_IfNotInternalsVisibleToAttribute() As Task Await AssertCompletionListHasItems("<Assembly: AssemblyVersion(""$$"")>", False) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfOtherAttributeIsPresent1() As Task Await AssertCompletionListHasItems("<Assembly: AssemblyVersion(""1.0.0.0""), InternalsVisibleTo(""$$", True) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfOtherAttributeIsPresent2() As Task Await AssertCompletionListHasItems("<Assembly: InternalsVisibleTo(""$$""), AssemblyVersion(""1.0.0.0"")>", True) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfOtherAttributesAreAhead() As Task Await AssertCompletionListHasItems(" <Assembly: AssemblyVersion(""1.0.0.0"")> <Assembly: InternalsVisibleTo(""$$", True) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfOtherAttributesAreFollowing() As Task Await AssertCompletionListHasItems(" <Assembly: InternalsVisibleTo(""$$ <Assembly: AssemblyVersion(""1.0.0.0"")> <Assembly: AssemblyCompany(""Test"")>", True) End Function <WpfFact> Public Async Function AssertCompletionListHasItems_IfNamespaceIsFollowing() As Task Await AssertCompletionListHasItems(" <Assembly: InternalsVisibleTo(""$$ Namespace A Public Class A End Class End Namespace", True) End Function <WpfFact> Public Async Function CodeCompletionHasItemsIfInteralVisibleToIsReferencedByTypeAlias() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ Imports IVT = System.Runtime.CompilerServices.InternalsVisibleToAttribute <Assembly: IVT("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsContainAll("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionDoesNotContainCurrentAssembly() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$")> ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("TestAssembly") End Using End Function <WpfFact> Public Async Function CodeCompletionInsertsAssemblyNameOnCommit() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"> </Project> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$")> ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertSelectedCompletionItem("ClassLibrary1") state.SendTab() state.AssertMatchesTextStartingAtLine(1, "<Assembly: System.Runtime.CompilerServices.InternalsVisibleTo(""ClassLibrary1"")>") End Using End Function <WpfFact> Public Async Function CodeCompletionInsertsPublicKeyOnCommit() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"> <CompilationOptions CryptoKeyFile=<%= SigningTestHelpers.PublicKeyFile %> StrongNameProvider=<%= SigningTestHelpers.DefaultDesktopStrongNameProvider.GetType().AssemblyQualifiedName %>/> </Project> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$")> ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertSelectedCompletionItem("ClassLibrary1") state.SendTab() state.AssertMatchesTextStartingAtLine(1, "<Assembly: System.Runtime.CompilerServices.InternalsVisibleTo(""ClassLibrary1, PublicKey=00240000048000009400000006020000002400005253413100040000010001002b986f6b5ea5717d35c72d38561f413e267029efa9b5f107b9331d83df657381325b3a67b75812f63a9436ceccb49494de8f574f8e639d4d26c0fcf8b0e9a1a196b80b6f6ed053628d10d027e032df2ed1d60835e5f47d32c9ef6da10d0366a319573362c821b5f8fa5abc5bb22241de6f666a85d82d6ba8c3090d01636bd2bb"")>") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsPublicKeyIfKeyIsSpecifiedByAttribute() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"> <CompilationOptions StrongNameProvider=<%= SigningTestHelpers.DefaultDesktopStrongNameProvider.GetType().AssemblyQualifiedName %>/> <Document> <Assembly: System.Reflection.AssemblyKeyFile("<%= SigningTestHelpers.PublicKeyFile %>")> </Document> </Project> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$")> ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertSelectedCompletionItem("ClassLibrary1") state.SendTab() state.AssertMatchesTextStartingAtLine(1, "<Assembly: System.Runtime.CompilerServices.InternalsVisibleTo(""ClassLibrary1, PublicKey=00240000048000009400000006020000002400005253413100040000010001002b986f6b5ea5717d35c72d38561f413e267029efa9b5f107b9331d83df657381325b3a67b75812f63a9436ceccb49494de8f574f8e639d4d26c0fcf8b0e9a1a196b80b6f6ed053628d10d027e032df2ed1d60835e5f47d32c9ef6da10d0366a319573362c821b5f8fa5abc5bb22241de6f666a85d82d6ba8c3090d01636bd2bb"")>") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsPublicKeyIfDelayedSigningIsEnabled() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"> <CompilationOptions CryptoKeyFile=<%= SigningTestHelpers.PublicKeyFile %> StrongNameProvider=<%= SigningTestHelpers.DefaultDesktopStrongNameProvider.GetType().AssemblyQualifiedName %> DelaySign="True" /> </Project> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$")> ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertSelectedCompletionItem("ClassLibrary1") state.SendTab() state.AssertMatchesTextStartingAtLine(1, "<Assembly: System.Runtime.CompilerServices.InternalsVisibleTo(""ClassLibrary1, PublicKey=00240000048000009400000006020000002400005253413100040000010001002b986f6b5ea5717d35c72d38561f413e267029efa9b5f107b9331d83df657381325b3a67b75812f63a9436ceccb49494de8f574f8e639d4d26c0fcf8b0e9a1a196b80b6f6ed053628d10d027e032df2ed1d60835e5f47d32c9ef6da10d0366a319573362c821b5f8fa5abc5bb22241de6f666a85d82d6ba8c3090d01636bd2bb"")>") End Using End Function <WpfFact> Public Async Function CodeCompletionListIsEmptyIfAttributeIsNotTheBCLAttribute() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: Test.InternalsVisibleTo("$$")> Namespace Test <System.AttributeUsage(System.AttributeTargets.Assembly)> _ Public NotInheritable Class InternalsVisibleToAttribute Inherits System.Attribute Public Sub New(ignore As String) End Sub End Class End Namespace ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertNoCompletionSession() End Using End Function <WpfFact> Public Async Function CodeCompletionContainsOnlyAssembliesThatAreNotAlreadyIVT() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary2"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary3"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("ClassLibrary1")> <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("ClassLibrary2")> <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1", "ClassLibrary2") Await state.AssertCompletionItemsContainAll("ClassLibrary3") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsOnlyAssembliesThatAreNotAlreadyIVTIfAssemblyNameIsAConstant() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary2"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary3"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <MetadataReferenceFromSource Language="Visual Basic" CommonReferences="true"> <Document FilePath="ReferencedDocument.vb"> Namespace A Public NotInheritable Class Constants Private Sub New() End Sub Public Const AssemblyName1 As String = "ClassLibrary1" End Class End Namespace </Document> </MetadataReferenceFromSource> <Document FilePath="A.vb"><![CDATA[ <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo(A.Constants.AssemblyName1)> <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("ClassLibrary2")> <Assembly: System.Runtime.CompilerServices.InternalsVisibleTo("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1", "ClassLibrary2") Await state.AssertCompletionItemsContainAll("ClassLibrary3") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsOnlyAssembliesThatAreNotAlreadyIVTForDifferentSyntax() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary2"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary3"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary4"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary5"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary6"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary7"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary8"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ ' Code comment Imports System.Runtime.CompilerServices Imports System.Reflection Imports IVT = System.Runtime.CompilerServices.InternalsVisibleToAttribute ' Code comment <Assembly: InternalsVisibleTo("ClassLibrary1", AllInternalsVisible:=True)> <Assembly: AssemblyVersion("1.0.0.0"), Assembly: InternalsVisibleTo("ClassLibrary2")> <Assembly: InternalsVisibleTo("ClassLibrary3"), Assembly: AssemblyCopyright("Copyright")> <Assembly: AssemblyDescription("Description")> <Assembly: InternalsVisibleTo("ClassLibrary4")> <Assembly: InternalsVisibleTo("ClassLibrary5, PublicKey=00240000048000009400000006020000002400005253413100040000010001002b986f6b5ea5717d35c72d38561f413e267029efa9b5f107b9331d83df657381325b3a67b75812f63a9436ceccb49494de8f574f8e639d4d26c0fcf8b0e9a1a196b80b6f6ed053628d10d027e032df2ed1d60835e5f47d32c9ef6da10d0366a319573362c821b5f8fa5abc5bb22241de6f666a85d82d6ba8c3090d01636bd2bb")> <Assembly: InternalsVisibleTo("ClassLibrary" + "6")> <Assembly: IVT("ClassLibrary7")> <Assembly: InternalsVisibleTo("$$ Namespace A Public Class A End Class ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1", "ClassLibrary2", "ClassLibrary3", "ClassLibrary4", "ClassLibrary5", "ClassLibrary6", "ClassLibrary7") Await state.AssertCompletionItemsContainAll("ClassLibrary8") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsOnlyAssembliesThatAreNotAlreadyIVTWithSyntaxError() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="A.vb"><![CDATA[ Imports System.Runtime.CompilerServices Imports System.Reflection <Assembly: InternalsVisibleTo("ClassLibrary" + 1.ToString())> ' Not a constant <Assembly: InternalsVisibleTo("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() ' ClassLibrary1 must be listed because the existing attribute argument can't be resolved to a constant. Await state.AssertCompletionItemsContainAll("ClassLibrary1") End Using End Function <WpfFact> Public Async Function CodeCompletionContainsOnlyAssembliesThatAreNotAlreadyIVTWithMoreThanOneDocument() As Task Using state = TestStateFactory.CreateTestStateFromWorkspace( <Workspace> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary1"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="ClassLibrary2"/> <Project Language="Visual Basic" CommonReferences="true" AssemblyName="TestAssembly"> <Document FilePath="OtherDocument.vb"><![CDATA[ Imports System.Runtime.CompilerServices Imports System.Reflection <Assembly: InternalsVisibleTo("ClassLibrary1")> <Assembly: AssemblyDescription("Description")> ]]> </Document> <Document FilePath="A.vb"><![CDATA[ Imports System.Runtime.CompilerServices Imports System.Reflection <Assembly: InternalsVisibleTo("$$ ]]> </Document> </Project> </Workspace>) state.SendInvokeCompletionList() Await state.AssertCompletionItemsDoNotContainAny("ClassLibrary1") Await state.AssertCompletionItemsContainAll("ClassLibrary2") End Using End Function End Class End Namespace