From 6c8286eed777afedd5ff7a878e23913273194f9f Mon Sep 17 00:00:00 2001 From: "N. Taylor Mullen" Date: Tue, 19 Sep 2017 16:44:29 -0700 Subject: [PATCH] Split LanguageServices.Razor. - Created a new `Microsoft.VisualStudio.Editor.Razor` assembly to contain Visual Studio platform agnostic info. - Added a new `Microsoft.VisualStudio.Editor.Razor.Test.Common` project to be the centerfold for all VisualStudio agnostic test pieces. - Added a `Microsoft.VisualStudio.Editor.Razor.Test` project and pulled in LanguageService test files into the the Editor.Razor.Test project to correspond to their movement in the src project. #1690 --- Razor.sln | 35 ++++- build/repo.props | 2 + .../Properties/AssemblyInfo.cs | 2 + .../Properties/AssemblyInfo.cs | 3 + .../BackgroundParser.cs | 2 +- .../BufferGraphExtensions.cs | 0 .../DefaultCodeDocumentProvider.cs | 27 ++-- .../DefaultTemplateEngineFactoryService.cs | 4 +- ...aultTemplateEngineFactoryServiceFactory.cs | 4 +- .../DefaultTextBufferCodeDocumentProvider.cs | 33 +++++ .../DefaultTextBufferProvider.cs | 2 +- .../DocumentStructureChangedEventArgs.cs | 2 +- ...Microsoft.VisualStudio.Editor.Razor.csproj | 21 +++ .../Properties/AssemblyInfo.cs | 10 ++ .../RazorCodeDocumentProvider.cs | 2 +- .../RazorDirectiveCompletionProvider.cs | 2 +- .../RazorIndentationFactsServiceExtensions.cs | 0 .../RazorSyntaxTreePartialParser.cs | 2 +- .../RazorTextBufferProvider.cs | 2 +- .../TextBufferCodeDocumentProvider.cs} | 5 +- .../TextBufferExtensions.cs | 0 .../TextSnapshotSourceDocument.cs | 2 +- .../VisualStudioDocumentTracker.cs | 2 +- .../VisualStudioDocumentTrackerFactory.cs | 2 +- .../VisualStudioRazorParser.cs | 2 +- .../DefaultVisualStudioDocumentTracker.cs | 1 + ...faultVisualStudioDocumentTrackerFactory.cs | 1 + .../LegacyTextBufferCodeDocumentProvider.cs} | 5 +- .../{ => Legacy}/PartialParseResult.cs | 0 .../Legacy/RazorEditorParser.cs | 1 + ...VisualStudio.LanguageServices.Razor.csproj | 12 +- .../Properties/AssemblyInfo.cs | 1 + ...sualStudio.Editor.Razor.Test.Common.csproj | 23 +++ .../Properties/AssemblyInfo.cs | 8 + .../StringTextSnapshot.cs | 3 +- .../Xunit/ForegroundDispatcherTestBase.cs | 0 .../Xunit/ForegroundFactAttribute.cs | 0 .../Xunit/ForegroundFactDiscoverer.cs | 0 .../Xunit/ForegroundFactTestCase.cs | 0 .../Xunit/ForegroundTheoryAttribute.cs | 0 .../Xunit/ForegroundTheoryDiscoverer.cs | 0 .../DefaultCodeDocumentProviderTest.cs | 137 ++++++++++++++++++ ...DefaultTemplateEngineFactoryServiceTest.cs | 6 +- ...faultTextBufferCodeDocumentProviderTest.cs | 53 +++++++ .../DefaultTextBufferProviderTest.cs | 2 +- ...soft.VisualStudio.Editor.Razor.Test.csproj | 23 +++ .../RazorDirectiveCompletionProviderTest.cs | 2 +- .../RazorSyntaxTreePartialParserTest.cs | 2 +- .../VisualStudioRazorParserTest.cs | 4 +- .../Editor/DefaultCodeDocumentProviderTest.cs | 83 ----------- ...tVisualStudioDocumentTrackerFactoryTest.cs | 1 + ...gacyTextBufferCodeDocumentProviderTest.cs} | 11 +- ...lStudio.LanguageServices.Razor.Test.csproj | 2 +- .../RazorDocumentInfoViewModel.cs | 2 +- .../DocumentInfo/RazorDocumentInfoWindow.cs | 3 +- ...crosoft.VisualStudio.RazorExtension.csproj | 14 +- .../Properties/BindingRedirectAttributes.cs | 10 +- .../source.extension.vsixmanifest | 2 + 58 files changed, 435 insertions(+), 145 deletions(-) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/BackgroundParser.cs (99%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor => Microsoft.VisualStudio.Editor.Razor}/BufferGraphExtensions.cs (100%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/DefaultCodeDocumentProvider.cs (62%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor => Microsoft.VisualStudio.Editor.Razor}/DefaultTemplateEngineFactoryService.cs (97%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor => Microsoft.VisualStudio.Editor.Razor}/DefaultTemplateEngineFactoryServiceFactory.cs (77%) create mode 100644 src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferCodeDocumentProvider.cs rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/DefaultTextBufferProvider.cs (97%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/DocumentStructureChangedEventArgs.cs (94%) create mode 100644 src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj create mode 100644 src/Microsoft.VisualStudio.Editor.Razor/Properties/AssemblyInfo.cs rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/RazorCodeDocumentProvider.cs (87%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/RazorDirectiveCompletionProvider.cs (99%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor => Microsoft.VisualStudio.Editor.Razor}/RazorIndentationFactsServiceExtensions.cs (100%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/RazorSyntaxTreePartialParser.cs (97%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/RazorTextBufferProvider.cs (86%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioCodeDocumentProvider.cs => Microsoft.VisualStudio.Editor.Razor/TextBufferCodeDocumentProvider.cs} (72%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor => Microsoft.VisualStudio.Editor.Razor}/TextBufferExtensions.cs (100%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor => Microsoft.VisualStudio.Editor.Razor}/TextSnapshotSourceDocument.cs (97%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/VisualStudioDocumentTracker.cs (93%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/VisualStudioDocumentTrackerFactory.cs (85%) rename src/{Microsoft.VisualStudio.LanguageServices.Razor/Editor => Microsoft.VisualStudio.Editor.Razor}/VisualStudioRazorParser.cs (99%) rename src/Microsoft.VisualStudio.LanguageServices.Razor/{Editor/DefaultVisualStudioCodeDocumentProvider.cs => Legacy/LegacyTextBufferCodeDocumentProvider.cs} (87%) rename src/Microsoft.VisualStudio.LanguageServices.Razor/{ => Legacy}/PartialParseResult.cs (100%) create mode 100644 test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj create mode 100644 test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Properties/AssemblyInfo.cs rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/StringTextSnapshot.cs (98%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/Xunit/ForegroundDispatcherTestBase.cs (100%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/Xunit/ForegroundFactAttribute.cs (100%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/Xunit/ForegroundFactDiscoverer.cs (100%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/Xunit/ForegroundFactTestCase.cs (100%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/Xunit/ForegroundTheoryAttribute.cs (100%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test.Common}/Xunit/ForegroundTheoryDiscoverer.cs (100%) create mode 100644 test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultCodeDocumentProviderTest.cs rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test => Microsoft.VisualStudio.Editor.Razor.Test}/DefaultTemplateEngineFactoryServiceTest.cs (98%) create mode 100644 test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferCodeDocumentProviderTest.cs rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor => Microsoft.VisualStudio.Editor.Razor.Test}/DefaultTextBufferProviderTest.cs (99%) create mode 100644 test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor => Microsoft.VisualStudio.Editor.Razor.Test}/RazorDirectiveCompletionProviderTest.cs (99%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor => Microsoft.VisualStudio.Editor.Razor.Test}/RazorSyntaxTreePartialParserTest.cs (99%) rename test/{Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor => Microsoft.VisualStudio.Editor.Razor.Test}/VisualStudioRazorParserTest.cs (99%) delete mode 100644 test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultCodeDocumentProviderTest.cs rename test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/{DefaultVisualStudioCodeDocumentProviderTest.cs => LegacyTextBufferCodeDocumentProviderTest.cs} (90%) diff --git a/Razor.sln b/Razor.sln index 7cc7886e0d..3346a86b71 100644 --- a/Razor.sln +++ b/Razor.sln @@ -1,6 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 -VisualStudioVersion = 15.0.26820.0 +VisualStudioVersion = 15.0.26917.3000 MinimumVisualStudioVersion = 15.0.26730.03 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{3C0D6505-79B3-49D0-B4C3-176F0F1836ED}" ProjectSection(SolutionItems) = preProject @@ -65,6 +65,12 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Mvc.Ra EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Razor.Test.MvcShim.Version1_X", "test\Microsoft.AspNetCore.Razor.Test.MvcShim.Version1_X\Microsoft.AspNetCore.Razor.Test.MvcShim.Version1_X.csproj", "{AC5CA24B-B81E-4B20-B193-2E3983B1896C}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.VisualStudio.Editor.Razor", "src\Microsoft.VisualStudio.Editor.Razor\Microsoft.VisualStudio.Editor.Razor.csproj", "{0BCDE75A-A438-46C7-95E9-391F029D07C5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.VisualStudio.Editor.Razor.Test", "test\Microsoft.VisualStudio.Editor.Razor.Test\Microsoft.VisualStudio.Editor.Razor.Test.csproj", "{AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.VisualStudio.Editor.Razor.Test.Common", "test\Microsoft.VisualStudio.Editor.Razor.Test.Common\Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj", "{FC684D4F-D23C-407C-9C68-E10EF3B38560}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -255,6 +261,30 @@ Global {AC5CA24B-B81E-4B20-B193-2E3983B1896C}.Release|Any CPU.Build.0 = Release|Any CPU {AC5CA24B-B81E-4B20-B193-2E3983B1896C}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU {AC5CA24B-B81E-4B20-B193-2E3983B1896C}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.Release|Any CPU.Build.0 = Release|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU + {0BCDE75A-A438-46C7-95E9-391F029D07C5}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.Release|Any CPU.Build.0 = Release|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.Release|Any CPU.Build.0 = Release|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU + {FC684D4F-D23C-407C-9C68-E10EF3B38560}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -283,6 +313,9 @@ Global {F1538809-7347-45D2-A7AC-C1D89CF0BBD4} = {3C0D6505-79B3-49D0-B4C3-176F0F1836ED} {296D4516-0323-4D28-955D-B0324E4F10BE} = {92463391-81BE-462B-AC3C-78C6C760741F} {AC5CA24B-B81E-4B20-B193-2E3983B1896C} = {92463391-81BE-462B-AC3C-78C6C760741F} + {0BCDE75A-A438-46C7-95E9-391F029D07C5} = {3C0D6505-79B3-49D0-B4C3-176F0F1836ED} + {AA888DB9-340E-4E06-A2A4-25BFEE1AC2B7} = {92463391-81BE-462B-AC3C-78C6C760741F} + {FC684D4F-D23C-407C-9C68-E10EF3B38560} = {92463391-81BE-462B-AC3C-78C6C760741F} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {0035341D-175A-4D05-95E6-F1C2785A1E26} diff --git a/build/repo.props b/build/repo.props index 1ff0cdfb8e..a383ca9761 100644 --- a/build/repo.props +++ b/build/repo.props @@ -2,6 +2,8 @@ + + diff --git a/src/Microsoft.AspNetCore.Razor.Language/Properties/AssemblyInfo.cs b/src/Microsoft.AspNetCore.Razor.Language/Properties/AssemblyInfo.cs index 754fa9b97a..c3e9d48681 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/Properties/AssemblyInfo.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/Properties/AssemblyInfo.cs @@ -11,7 +11,9 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Razor.Workspaces.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Razor.Workspaces, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Remote.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.RazorExtension, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")] diff --git a/src/Microsoft.CodeAnalysis.Razor.Workspaces/Properties/AssemblyInfo.cs b/src/Microsoft.CodeAnalysis.Razor.Workspaces/Properties/AssemblyInfo.cs index f3ea1dc4ee..ea60d51dec 100644 --- a/src/Microsoft.CodeAnalysis.Razor.Workspaces/Properties/AssemblyInfo.cs +++ b/src/Microsoft.CodeAnalysis.Razor.Workspaces/Properties/AssemblyInfo.cs @@ -5,6 +5,9 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Razor.Workspaces.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Remote.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor.Test.Common, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.RazorExtension, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/BackgroundParser.cs b/src/Microsoft.VisualStudio.Editor.Razor/BackgroundParser.cs similarity index 99% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/BackgroundParser.cs rename to src/Microsoft.VisualStudio.Editor.Razor/BackgroundParser.cs index b3b290af0a..887a98dab0 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/BackgroundParser.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/BackgroundParser.cs @@ -11,7 +11,7 @@ using Microsoft.AspNetCore.Razor.Language; using Microsoft.AspNetCore.Razor.Language.Legacy; using Microsoft.VisualStudio.Text; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { internal class BackgroundParser : IDisposable { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/BufferGraphExtensions.cs b/src/Microsoft.VisualStudio.Editor.Razor/BufferGraphExtensions.cs similarity index 100% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/BufferGraphExtensions.cs rename to src/Microsoft.VisualStudio.Editor.Razor/BufferGraphExtensions.cs diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultCodeDocumentProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/DefaultCodeDocumentProvider.cs similarity index 62% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultCodeDocumentProvider.cs rename to src/Microsoft.VisualStudio.Editor.Razor/DefaultCodeDocumentProvider.cs index 34f06383f9..5d3bd97ce3 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultCodeDocumentProvider.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/DefaultCodeDocumentProvider.cs @@ -2,34 +2,37 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; +using System.Collections.Generic; using System.ComponentModel.Composition; using Microsoft.AspNetCore.Razor.Language; using Microsoft.CodeAnalysis; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { [System.Composition.Shared] [Export(typeof(RazorCodeDocumentProvider))] internal class DefaultCodeDocumentProvider : RazorCodeDocumentProvider { private readonly RazorTextBufferProvider _bufferProvider; - private readonly VisualStudioCodeDocumentProvider _codeDocumentProvider; + private readonly IEnumerable _codeDocumentProviders; [ImportingConstructor] - public DefaultCodeDocumentProvider(RazorTextBufferProvider bufferProvider, VisualStudioCodeDocumentProvider codeDocumentProvider) + public DefaultCodeDocumentProvider( + RazorTextBufferProvider bufferProvider, + [ImportMany] IEnumerable codeDocumentProviders) { if (bufferProvider == null) { throw new ArgumentNullException(nameof(bufferProvider)); } - if (codeDocumentProvider == null) + if (codeDocumentProviders == null) { - throw new ArgumentNullException(nameof(codeDocumentProvider)); + throw new ArgumentNullException(nameof(codeDocumentProviders)); } _bufferProvider = bufferProvider; - _codeDocumentProvider = codeDocumentProvider; + _codeDocumentProviders = codeDocumentProviders; } public override bool TryGetFromDocument(TextDocument document, out RazorCodeDocument codeDocument) @@ -46,13 +49,17 @@ namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor return false; } - if (!_codeDocumentProvider.TryGetFromBuffer(textBuffer, out codeDocument)) + foreach (var codeDocumentProvider in _codeDocumentProviders) { - // A Razor code document has not yet been associated with the buffer. - return false; + if (codeDocumentProvider.TryGetFromBuffer(textBuffer, out codeDocument)) + { + return true; + } } - return true; + // A Razor code document has not yet been associated with the buffer yet. + codeDocument = null; + return false; } } } diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/DefaultTemplateEngineFactoryService.cs b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTemplateEngineFactoryService.cs similarity index 97% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/DefaultTemplateEngineFactoryService.cs rename to src/Microsoft.VisualStudio.Editor.Razor/DefaultTemplateEngineFactoryService.cs index e24938dccd..27639fa63e 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/DefaultTemplateEngineFactoryService.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTemplateEngineFactoryService.cs @@ -4,11 +4,13 @@ using System; using System.IO; using Microsoft.AspNetCore.Razor.Language; +using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.Razor; using Microsoft.CodeAnalysis.Razor.ProjectSystem; using Mvc1_X = Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X; using MvcLatest = Microsoft.AspNetCore.Mvc.Razor.Extensions; -namespace Microsoft.CodeAnalysis.Razor +namespace Microsoft.VisualStudio.Editor.Razor { internal class DefaultTemplateEngineFactoryService : RazorTemplateEngineFactoryService { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/DefaultTemplateEngineFactoryServiceFactory.cs b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTemplateEngineFactoryServiceFactory.cs similarity index 77% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/DefaultTemplateEngineFactoryServiceFactory.cs rename to src/Microsoft.VisualStudio.Editor.Razor/DefaultTemplateEngineFactoryServiceFactory.cs index 66fe790807..f95df76c08 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/DefaultTemplateEngineFactoryServiceFactory.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTemplateEngineFactoryServiceFactory.cs @@ -6,9 +6,9 @@ using Microsoft.CodeAnalysis.Host.Mef; using Microsoft.CodeAnalysis.Razor; using Microsoft.CodeAnalysis.Razor.ProjectSystem; -namespace Microsoft.VisualStudio.LanguageServices.Razor +namespace Microsoft.VisualStudio.Editor.Razor { - [ExportLanguageServiceFactory(typeof(CodeAnalysis.Razor.RazorTemplateEngineFactoryService), RazorLanguage.Name, ServiceLayer.Default)] + [ExportLanguageServiceFactory(typeof(RazorTemplateEngineFactoryService), RazorLanguage.Name, ServiceLayer.Default)] internal class DefaultTemplateEngineFactoryServiceFactory : ILanguageServiceFactory { public ILanguageService CreateLanguageService(HostLanguageServices languageServices) diff --git a/src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferCodeDocumentProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferCodeDocumentProvider.cs new file mode 100644 index 0000000000..5ee3552688 --- /dev/null +++ b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferCodeDocumentProvider.cs @@ -0,0 +1,33 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System; +using System.ComponentModel.Composition; +using Microsoft.AspNetCore.Razor.Language; +using Microsoft.VisualStudio.Text; + +namespace Microsoft.VisualStudio.Editor.Razor +{ + [System.Composition.Shared] + [Export(typeof(TextBufferCodeDocumentProvider))] + internal class DefaultTextBufferCodeDocumentProvider : TextBufferCodeDocumentProvider + { + public override bool TryGetFromBuffer(ITextBuffer textBuffer, out RazorCodeDocument codeDocument) + { + if (textBuffer == null) + { + throw new ArgumentNullException(nameof(textBuffer)); + } + + // Hack until we own the lifetime of the parser. + if (textBuffer.Properties.TryGetProperty(typeof(VisualStudioRazorParser), out VisualStudioRazorParser parser) && parser.CodeDocument != null) + { + codeDocument = parser.CodeDocument; + return true; + } + + codeDocument = null; + return false; + } + } +} diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultTextBufferProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferProvider.cs similarity index 97% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultTextBufferProvider.cs rename to src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferProvider.cs index 6c3f86ad89..22efa0ec08 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultTextBufferProvider.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/DefaultTextBufferProvider.cs @@ -9,7 +9,7 @@ using Microsoft.CodeAnalysis.Text; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Projection; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { [System.Composition.Shared] [Export(typeof(RazorTextBufferProvider))] diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DocumentStructureChangedEventArgs.cs b/src/Microsoft.VisualStudio.Editor.Razor/DocumentStructureChangedEventArgs.cs similarity index 94% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DocumentStructureChangedEventArgs.cs rename to src/Microsoft.VisualStudio.Editor.Razor/DocumentStructureChangedEventArgs.cs index c5ff0a249f..0aca0774f7 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DocumentStructureChangedEventArgs.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/DocumentStructureChangedEventArgs.cs @@ -5,7 +5,7 @@ using System; using Microsoft.AspNetCore.Razor.Language; using Microsoft.VisualStudio.Text; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { internal sealed class DocumentStructureChangedEventArgs : EventArgs { diff --git a/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj b/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj new file mode 100644 index 0000000000..47d1f08da4 --- /dev/null +++ b/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj @@ -0,0 +1,21 @@ + + + + net46 + Razor is a markup syntax for adding server-side logic to web pages. This package contains the Visual Studio agnostic Razor design-time infrastructure. + false + + + + + + + + + + + + + + + diff --git a/src/Microsoft.VisualStudio.Editor.Razor/Properties/AssemblyInfo.cs b/src/Microsoft.VisualStudio.Editor.Razor/Properties/AssemblyInfo.cs new file mode 100644 index 0000000000..9a0ced94d5 --- /dev/null +++ b/src/Microsoft.VisualStudio.Editor.Razor/Properties/AssemblyInfo.cs @@ -0,0 +1,10 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.RazorExtension, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")] diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorCodeDocumentProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/RazorCodeDocumentProvider.cs similarity index 87% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorCodeDocumentProvider.cs rename to src/Microsoft.VisualStudio.Editor.Razor/RazorCodeDocumentProvider.cs index 708385b29f..be30691363 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorCodeDocumentProvider.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/RazorCodeDocumentProvider.cs @@ -4,7 +4,7 @@ using Microsoft.AspNetCore.Razor.Language; using Microsoft.CodeAnalysis; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { internal abstract class RazorCodeDocumentProvider { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorDirectiveCompletionProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/RazorDirectiveCompletionProvider.cs similarity index 99% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorDirectiveCompletionProvider.cs rename to src/Microsoft.VisualStudio.Editor.Razor/RazorDirectiveCompletionProvider.cs index d2a71eea0f..131aa06011 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorDirectiveCompletionProvider.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/RazorDirectiveCompletionProvider.cs @@ -18,7 +18,7 @@ using Microsoft.CodeAnalysis.Text; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Projection; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { [System.Composition.Shared] [Export(typeof(CompletionProvider))] diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/RazorIndentationFactsServiceExtensions.cs b/src/Microsoft.VisualStudio.Editor.Razor/RazorIndentationFactsServiceExtensions.cs similarity index 100% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/RazorIndentationFactsServiceExtensions.cs rename to src/Microsoft.VisualStudio.Editor.Razor/RazorIndentationFactsServiceExtensions.cs diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorSyntaxTreePartialParser.cs b/src/Microsoft.VisualStudio.Editor.Razor/RazorSyntaxTreePartialParser.cs similarity index 97% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorSyntaxTreePartialParser.cs rename to src/Microsoft.VisualStudio.Editor.Razor/RazorSyntaxTreePartialParser.cs index ade9568907..9bd297d3e4 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorSyntaxTreePartialParser.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/RazorSyntaxTreePartialParser.cs @@ -5,7 +5,7 @@ using Microsoft.AspNetCore.Razor.Language; using Microsoft.AspNetCore.Razor.Language.Legacy; using Span = Microsoft.AspNetCore.Razor.Language.Legacy.Span; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { internal class RazorSyntaxTreePartialParser { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorTextBufferProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/RazorTextBufferProvider.cs similarity index 86% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorTextBufferProvider.cs rename to src/Microsoft.VisualStudio.Editor.Razor/RazorTextBufferProvider.cs index 8c6dfbe8c5..8c18c6d89a 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/RazorTextBufferProvider.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/RazorTextBufferProvider.cs @@ -4,7 +4,7 @@ using Microsoft.CodeAnalysis; using Microsoft.VisualStudio.Text; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { internal abstract class RazorTextBufferProvider { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioCodeDocumentProvider.cs b/src/Microsoft.VisualStudio.Editor.Razor/TextBufferCodeDocumentProvider.cs similarity index 72% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioCodeDocumentProvider.cs rename to src/Microsoft.VisualStudio.Editor.Razor/TextBufferCodeDocumentProvider.cs index 1bfde5d00e..87cf733246 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioCodeDocumentProvider.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/TextBufferCodeDocumentProvider.cs @@ -2,11 +2,12 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using Microsoft.AspNetCore.Razor.Language; +using Microsoft.CodeAnalysis.Host; using Microsoft.VisualStudio.Text; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { - internal abstract class VisualStudioCodeDocumentProvider + internal abstract class TextBufferCodeDocumentProvider { public abstract bool TryGetFromBuffer(ITextBuffer textBuffer, out RazorCodeDocument codeDocument); } diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/TextBufferExtensions.cs b/src/Microsoft.VisualStudio.Editor.Razor/TextBufferExtensions.cs similarity index 100% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/TextBufferExtensions.cs rename to src/Microsoft.VisualStudio.Editor.Razor/TextBufferExtensions.cs diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/TextSnapshotSourceDocument.cs b/src/Microsoft.VisualStudio.Editor.Razor/TextSnapshotSourceDocument.cs similarity index 97% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/TextSnapshotSourceDocument.cs rename to src/Microsoft.VisualStudio.Editor.Razor/TextSnapshotSourceDocument.cs index 37bb73f106..e965b7ae2e 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/TextSnapshotSourceDocument.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/TextSnapshotSourceDocument.cs @@ -6,7 +6,7 @@ using System.Text; using Microsoft.AspNetCore.Razor.Language; using Microsoft.VisualStudio.Text; -namespace Microsoft.VisualStudio.LanguageServices.Razor +namespace Microsoft.VisualStudio.Editor.Razor { internal class TextSnapshotSourceDocument : RazorSourceDocument { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioDocumentTracker.cs b/src/Microsoft.VisualStudio.Editor.Razor/VisualStudioDocumentTracker.cs similarity index 93% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioDocumentTracker.cs rename to src/Microsoft.VisualStudio.Editor.Razor/VisualStudioDocumentTracker.cs index 745ebbe837..48abb122da 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioDocumentTracker.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/VisualStudioDocumentTracker.cs @@ -8,7 +8,7 @@ using Microsoft.CodeAnalysis.Razor.ProjectSystem; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Editor; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { public abstract class VisualStudioDocumentTracker { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioDocumentTrackerFactory.cs b/src/Microsoft.VisualStudio.Editor.Razor/VisualStudioDocumentTrackerFactory.cs similarity index 85% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioDocumentTrackerFactory.cs rename to src/Microsoft.VisualStudio.Editor.Razor/VisualStudioDocumentTrackerFactory.cs index 7e6fcb01d7..60f3b8e7b4 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioDocumentTrackerFactory.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/VisualStudioDocumentTrackerFactory.cs @@ -3,7 +3,7 @@ using Microsoft.VisualStudio.Text.Editor; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { public abstract class VisualStudioDocumentTrackerFactory { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioRazorParser.cs b/src/Microsoft.VisualStudio.Editor.Razor/VisualStudioRazorParser.cs similarity index 99% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioRazorParser.cs rename to src/Microsoft.VisualStudio.Editor.Razor/VisualStudioRazorParser.cs index 5e0d66d1ea..b101361cf1 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/VisualStudioRazorParser.cs +++ b/src/Microsoft.VisualStudio.Editor.Razor/VisualStudioRazorParser.cs @@ -12,7 +12,7 @@ using Microsoft.VisualStudio.Text.Editor; using ITextBuffer = Microsoft.VisualStudio.Text.ITextBuffer; using Timer = System.Timers.Timer; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { internal class VisualStudioRazorParser : IDisposable { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTracker.cs b/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTracker.cs index 9a97af28a6..b852a11e48 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTracker.cs +++ b/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTracker.cs @@ -10,6 +10,7 @@ using Microsoft.AspNetCore.Razor.Language; using Microsoft.CodeAnalysis; using Microsoft.CodeAnalysis.Razor; using Microsoft.CodeAnalysis.Razor.ProjectSystem; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Editor; diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTrackerFactory.cs b/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTrackerFactory.cs index 3860e64882..8119556d04 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTrackerFactory.cs +++ b/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioDocumentTrackerFactory.cs @@ -9,6 +9,7 @@ using System.Linq; using Microsoft.CodeAnalysis; using Microsoft.CodeAnalysis.Razor; using Microsoft.CodeAnalysis.Razor.ProjectSystem; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Editor; using Microsoft.VisualStudio.Utilities; diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioCodeDocumentProvider.cs b/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/LegacyTextBufferCodeDocumentProvider.cs similarity index 87% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioCodeDocumentProvider.cs rename to src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/LegacyTextBufferCodeDocumentProvider.cs index ec282cf4b9..963dfc9fe8 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Editor/DefaultVisualStudioCodeDocumentProvider.cs +++ b/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/LegacyTextBufferCodeDocumentProvider.cs @@ -4,13 +4,14 @@ using System; using System.ComponentModel.Composition; using Microsoft.AspNetCore.Razor.Language; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Text; namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor { [System.Composition.Shared] - [Export(typeof(VisualStudioCodeDocumentProvider))] - internal class DefaultVisualStudioCodeDocumentProvider : VisualStudioCodeDocumentProvider + [Export(typeof(TextBufferCodeDocumentProvider))] + internal class LegacyTextBufferCodeDocumentProvider : TextBufferCodeDocumentProvider { public override bool TryGetFromBuffer(ITextBuffer textBuffer, out RazorCodeDocument codeDocument) { diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/PartialParseResult.cs b/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/PartialParseResult.cs similarity index 100% rename from src/Microsoft.VisualStudio.LanguageServices.Razor/PartialParseResult.cs rename to src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/PartialParseResult.cs diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/RazorEditorParser.cs b/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/RazorEditorParser.cs index edb369bc1a..de7fbc9977 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/RazorEditorParser.cs +++ b/src/Microsoft.VisualStudio.LanguageServices.Razor/Legacy/RazorEditorParser.cs @@ -9,6 +9,7 @@ using System.Linq; using System.Threading; using Microsoft.AspNetCore.Razor.Language; using Microsoft.AspNetCore.Razor.Language.Legacy; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Text; namespace Microsoft.VisualStudio.LanguageServices.Razor diff --git a/src/Microsoft.VisualStudio.LanguageServices.Razor/Microsoft.VisualStudio.LanguageServices.Razor.csproj b/src/Microsoft.VisualStudio.LanguageServices.Razor/Microsoft.VisualStudio.LanguageServices.Razor.csproj index e1080f6608..c059068d03 100644 --- a/src/Microsoft.VisualStudio.LanguageServices.Razor/Microsoft.VisualStudio.LanguageServices.Razor.csproj +++ b/src/Microsoft.VisualStudio.LanguageServices.Razor/Microsoft.VisualStudio.LanguageServices.Razor.csproj @@ -2,7 +2,7 @@ net46 - Razor is a markup syntax for adding server-side logic to web pages. This package contains the Razor design-time infrastructure. + Razor is a markup syntax for adding server-side logic to web pages. This package contains the Razor design-time infrastructure for Visual Studio. false @@ -11,13 +11,8 @@ - - - - - @@ -36,10 +31,7 @@ - - - - + diff --git a/test/Microsoft.AspNetCore.Razor.Test.Common/Properties/AssemblyInfo.cs b/test/Microsoft.AspNetCore.Razor.Test.Common/Properties/AssemblyInfo.cs index dd401143f5..3a2cadef34 100644 --- a/test/Microsoft.AspNetCore.Razor.Test.Common/Properties/AssemblyInfo.cs +++ b/test/Microsoft.AspNetCore.Razor.Test.Common/Properties/AssemblyInfo.cs @@ -5,5 +5,6 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Microsoft.AspNetCore.Razor.Language.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Razor.Workspaces.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] [assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")] diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj new file mode 100644 index 0000000000..3a355769ae --- /dev/null +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj @@ -0,0 +1,23 @@ + + + + net46 + + + + + + + + + + + + + + + + + + + diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Properties/AssemblyInfo.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Properties/AssemblyInfo.cs new file mode 100644 index 0000000000..d9bb89536a --- /dev/null +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Properties/AssemblyInfo.cs @@ -0,0 +1,8 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System.Runtime.CompilerServices; +[assembly: InternalsVisibleTo("Microsoft.CodeAnalysis.Razor.Workspaces.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.Editor.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("Microsoft.VisualStudio.LanguageServices.Razor.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100f33a29044fa9d740c9b3213a93e57c84b472c84e0b8a0e1ae48e67a9f8f6de9d5f7f3d52ac23e48ac51801f1dc950abe901da34d2a9e3baadb141a17c77ef3c565dd5ee5054b91cf63bb3c6ab83f72ab3aafe93d0fc3c2348b764fafb0b1c0733de51459aeab46580384bf9d74c4e28164b7cde247f891ba07891c9d872ad2bb")] +[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")] diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/StringTextSnapshot.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/StringTextSnapshot.cs similarity index 98% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/StringTextSnapshot.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/StringTextSnapshot.cs index 0cbcc181d4..5072f89ccd 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/StringTextSnapshot.cs +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/StringTextSnapshot.cs @@ -4,10 +4,9 @@ using System; using System.Collections.Generic; using System.IO; -using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Utilities; -namespace Microsoft.AspNetCore.Razor.Language.Legacy +namespace Microsoft.VisualStudio.Text { public class StringTextSnapshot : ITextSnapshot { diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundDispatcherTestBase.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundDispatcherTestBase.cs similarity index 100% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundDispatcherTestBase.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundDispatcherTestBase.cs diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundFactAttribute.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundFactAttribute.cs similarity index 100% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundFactAttribute.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundFactAttribute.cs diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundFactDiscoverer.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundFactDiscoverer.cs similarity index 100% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundFactDiscoverer.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundFactDiscoverer.cs diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundFactTestCase.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundFactTestCase.cs similarity index 100% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundFactTestCase.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundFactTestCase.cs diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundTheoryAttribute.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundTheoryAttribute.cs similarity index 100% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundTheoryAttribute.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundTheoryAttribute.cs diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundTheoryDiscoverer.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundTheoryDiscoverer.cs similarity index 100% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Xunit/ForegroundTheoryDiscoverer.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Xunit/ForegroundTheoryDiscoverer.cs diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultCodeDocumentProviderTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultCodeDocumentProviderTest.cs new file mode 100644 index 0000000000..aaf4125a9a --- /dev/null +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultCodeDocumentProviderTest.cs @@ -0,0 +1,137 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using Microsoft.AspNetCore.Razor.Language; +using Microsoft.CodeAnalysis; +using Microsoft.VisualStudio.Text; +using Moq; +using Xunit; + +namespace Microsoft.VisualStudio.Editor.Razor +{ + public class DefaultCodeDocumentProviderTest + { + [Fact] + public void TryGetFromDocument_ReturnsFalseIfBufferProviderCanNotGetAssociatedBuffer() + { + // Arrange + ITextBuffer textBuffer; + RazorCodeDocument codeDocument; + var bufferProvider = new Mock(); + bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) + .Returns(false); + var vsCodeDocumentProvider = new Mock(); + vsCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.IsAny(), out codeDocument)) + .Returns(true); + var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, new[] { vsCodeDocumentProvider.Object }); + var document = new Mock(); + + // Act + var result = codeDocumentProvider.TryGetFromDocument(document.Object, out codeDocument); + + // Assert + Assert.False(result); + Assert.Null(codeDocument); + } + + [Fact] + public void TryGetFromDocument_ReturnsFalseIfVSProviderCanNotGetCodeDocument() + { + // Arrange + var textBuffer = new Mock().Object; + RazorCodeDocument codeDocument; + var bufferProvider = new Mock(); + bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) + .Returns(true); + var vsCodeDocumentProvider = new Mock(); + vsCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out codeDocument)) + .Returns(false); + var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, new[] { vsCodeDocumentProvider.Object }); + var document = new Mock(); + + // Act + var result = codeDocumentProvider.TryGetFromDocument(document.Object, out codeDocument); + + // Assert + Assert.False(result); + Assert.Null(codeDocument); + } + + [Fact] + public void TryGetFromDocument_ReturnsTrueIfVSProviderCanGetCodeDocumentFromOneProvider() + { + // Arrange + var textBuffer = new Mock().Object; + RazorCodeDocument codeDocument; + var expectedCodeDocument = new Mock().Object; + var bufferProvider = new Mock(); + bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) + .Returns(true); + var failureVSCodeDocumentProvider = new Mock(); + failureVSCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out codeDocument)) + .Returns(false); + var successVSCodeDocumentProvider = new Mock(); + successVSCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out expectedCodeDocument)) + .Returns(true); + var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, new[] { failureVSCodeDocumentProvider.Object, successVSCodeDocumentProvider.Object }); + var document = new Mock(); + + // Act + var result = codeDocumentProvider.TryGetFromDocument(document.Object, out codeDocument); + + // Assert + Assert.True(result); + Assert.Same(expectedCodeDocument, codeDocument); + } + + [Fact] + public void TryGetFromDocument_ReturnsFirstProvidersResultThatGetsCodeDocument() + { + // Arrange + var textBuffer = new Mock().Object; + var expectedCodeDocument1 = new Mock().Object; + var expectedCodeDocument2 = new Mock().Object; + var bufferProvider = new Mock(); + bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) + .Returns(true); + var vsCodeDocumentProvider1 = new Mock(); + vsCodeDocumentProvider1.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out expectedCodeDocument1)) + .Returns(true); + var vsCodeDocumentProvider2 = new Mock(); + vsCodeDocumentProvider2.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out expectedCodeDocument2)) + .Returns(true); + var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, new[] { vsCodeDocumentProvider1.Object, vsCodeDocumentProvider2.Object }); + var document = new Mock(); + + // Act + var result = codeDocumentProvider.TryGetFromDocument(document.Object, out var codeDocument); + + // Assert + Assert.True(result); + Assert.Same(expectedCodeDocument1, codeDocument); + } + + [Fact] + public void TryGetFromDocument_ReturnsTrueIfBothBufferAndVSProviderReturnTrue() + { + // Arrange + var textBuffer = new Mock().Object; + var expectedCodeDocument = new Mock().Object; + var bufferProvider = new Mock(); + bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) + .Returns(true); + var vsCodeDocumentProvider = new Mock(); + vsCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out expectedCodeDocument)) + .Returns(true); + var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, new[] { vsCodeDocumentProvider.Object }); + var document = new Mock(); + + // Act + var result = codeDocumentProvider.TryGetFromDocument(document.Object, out var codeDocument); + + // Assert + Assert.True(result); + Assert.Same(expectedCodeDocument, codeDocument); + } + } +} diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/DefaultTemplateEngineFactoryServiceTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTemplateEngineFactoryServiceTest.cs similarity index 98% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/DefaultTemplateEngineFactoryServiceTest.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTemplateEngineFactoryServiceTest.cs index 3930d395ef..79a725927d 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/DefaultTemplateEngineFactoryServiceTest.cs +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTemplateEngineFactoryServiceTest.cs @@ -3,17 +3,19 @@ using System.Linq; using Microsoft.AspNetCore.Razor.Language; +using Microsoft.CodeAnalysis; using Microsoft.CodeAnalysis.CSharp; using Microsoft.CodeAnalysis.Host; +using Microsoft.CodeAnalysis.Razor; +using Xunit; using Mvc1_X = Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X; using MvcLatest = Microsoft.AspNetCore.Mvc.Razor.Extensions; -using Xunit; using Microsoft.CodeAnalysis.Razor.ProjectSystem; using System.Collections.Generic; using Moq; using System; -namespace Microsoft.CodeAnalysis.Razor +namespace Microsoft.VisualStudio.Editor.Razor { public class DefaultTemplateEngineFactoryServiceTest { diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferCodeDocumentProviderTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferCodeDocumentProviderTest.cs new file mode 100644 index 0000000000..12538735de --- /dev/null +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferCodeDocumentProviderTest.cs @@ -0,0 +1,53 @@ +// Copyright (c) .NET Foundation. All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using Microsoft.AspNetCore.Razor.Language; +using Microsoft.VisualStudio.Text; +using Microsoft.VisualStudio.Utilities; +using Moq; +using Xunit; + +namespace Microsoft.VisualStudio.Editor.Razor +{ + public class DefaultTextBufferCodeDocumentProviderTest + { + [Fact] + public void TryGetFromBuffer_UsesVisualStudioRazorParserIfAvailable() + { + // Arrange + var expectedCodeDocument = TestRazorCodeDocument.Create("Hello World"); + var parser = new VisualStudioRazorParser(expectedCodeDocument); + var properties = new PropertyCollection(); + properties.AddProperty(typeof(VisualStudioRazorParser), parser); + var textBuffer = new Mock(); + textBuffer.Setup(buffer => buffer.Properties) + .Returns(properties); + var provider = new DefaultTextBufferCodeDocumentProvider(); + + // Act + var result = provider.TryGetFromBuffer(textBuffer.Object, out var codeDocument); + + // Assert + Assert.True(result); + Assert.Same(expectedCodeDocument, codeDocument); + } + + [Fact] + public void TryGetFromBuffer_FailsIfNoParserIsAvailable() + { + // Arrange + var properties = new PropertyCollection(); + var textBuffer = new Mock(); + textBuffer.Setup(buffer => buffer.Properties) + .Returns(properties); + var provider = new DefaultTextBufferCodeDocumentProvider(); + + // Act + var result = provider.TryGetFromBuffer(textBuffer.Object, out var codeDocument); + + // Assert + Assert.False(result); + Assert.Null(codeDocument); + } + } +} diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultTextBufferProviderTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferProviderTest.cs similarity index 99% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultTextBufferProviderTest.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferProviderTest.cs index ac9ed038d8..939f4e5e79 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultTextBufferProviderTest.cs +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/DefaultTextBufferProviderTest.cs @@ -12,7 +12,7 @@ using Microsoft.VisualStudio.Utilities; using Moq; using Xunit; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { public class DefaultTextBufferProviderTest { diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj b/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj new file mode 100644 index 0000000000..ff43f27f9b --- /dev/null +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj @@ -0,0 +1,23 @@ + + + + net461 + + + + + + + + + + + + + + + + + + + diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/RazorDirectiveCompletionProviderTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/RazorDirectiveCompletionProviderTest.cs similarity index 99% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/RazorDirectiveCompletionProviderTest.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test/RazorDirectiveCompletionProviderTest.cs index 7b002a8702..5a3462914b 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/RazorDirectiveCompletionProviderTest.cs +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/RazorDirectiveCompletionProviderTest.cs @@ -18,7 +18,7 @@ using Microsoft.VisualStudio.Text; using Moq; using Xunit; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { public class RazorDirectiveCompletionProviderTest { diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/RazorSyntaxTreePartialParserTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/RazorSyntaxTreePartialParserTest.cs similarity index 99% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/RazorSyntaxTreePartialParserTest.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test/RazorSyntaxTreePartialParserTest.cs index a3f98ea6ac..a99603fe9b 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/RazorSyntaxTreePartialParserTest.cs +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/RazorSyntaxTreePartialParserTest.cs @@ -9,7 +9,7 @@ using Microsoft.AspNetCore.Razor.Language.Legacy; using Microsoft.VisualStudio.Text; using Xunit; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { public class RazorSyntaxTreePartialParserTest { diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/VisualStudioRazorParserTest.cs b/test/Microsoft.VisualStudio.Editor.Razor.Test/VisualStudioRazorParserTest.cs similarity index 99% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/VisualStudioRazorParserTest.cs rename to test/Microsoft.VisualStudio.Editor.Razor.Test/VisualStudioRazorParserTest.cs index ea1779afbe..c56595f421 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/VisualStudioRazorParserTest.cs +++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/VisualStudioRazorParserTest.cs @@ -9,15 +9,13 @@ using System.Threading; using Microsoft.AspNetCore.Mvc.Razor.Extensions; using Microsoft.AspNetCore.Razor.Language; using Microsoft.AspNetCore.Razor.Language.Legacy; -using Microsoft.AspNetCore.Testing.xunit; using Microsoft.VisualStudio.Language.Intellisense; -using Microsoft.VisualStudio.LanguageServices.Razor.Editor; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Editor; using Microsoft.VisualStudio.Utilities; using Xunit; -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor +namespace Microsoft.VisualStudio.Editor.Razor { public class VisualStudioRazorParserTest : ForegroundDispatcherTestBase { diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultCodeDocumentProviderTest.cs b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultCodeDocumentProviderTest.cs deleted file mode 100644 index 44630aaa8e..0000000000 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultCodeDocumentProviderTest.cs +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using Microsoft.AspNetCore.Razor.Language; -using Microsoft.CodeAnalysis; -using Microsoft.VisualStudio.Text; -using Moq; -using Xunit; - -namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor -{ - public class DefaultCodeDocumentProviderTest - { - [Fact] - public void TryGetFromDocument_ReturnsFalseIfBufferProviderCanNotGetAssociatedBuffer() - { - // Arrange - ITextBuffer textBuffer; - RazorCodeDocument codeDocument; - var bufferProvider = new Mock(); - bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) - .Returns(false); - var vsCodeDocumentProvider = new Mock(); - vsCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.IsAny(), out codeDocument)) - .Returns(true); - var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, vsCodeDocumentProvider.Object); - var document = new Mock(); - - // Act - var result = codeDocumentProvider.TryGetFromDocument(document.Object, out codeDocument); - - // Assert - Assert.False(result); - Assert.Null(codeDocument); - } - - [Fact] - public void TryGetFromDocument_ReturnsFalseIfVSProviderCanNotGetCodeDocument() - { - // Arrange - var textBuffer = new Mock().Object; - RazorCodeDocument codeDocument; - var bufferProvider = new Mock(); - bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) - .Returns(true); - var vsCodeDocumentProvider = new Mock(); - vsCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out codeDocument)) - .Returns(false); - var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, vsCodeDocumentProvider.Object); - var document = new Mock(); - - // Act - var result = codeDocumentProvider.TryGetFromDocument(document.Object, out codeDocument); - - // Assert - Assert.False(result); - Assert.Null(codeDocument); - } - - [Fact] - public void TryGetFromDocument_ReturnsTrueIfBothBufferAndVSProviderReturnTrue() - { - // Arrange - var textBuffer = new Mock().Object; - var expectedCodeDocument = new Mock().Object; - var bufferProvider = new Mock(); - bufferProvider.Setup(provider => provider.TryGetFromDocument(It.IsAny(), out textBuffer)) - .Returns(true); - var vsCodeDocumentProvider = new Mock(); - vsCodeDocumentProvider.Setup(provider => provider.TryGetFromBuffer(It.Is(val => val == textBuffer), out expectedCodeDocument)) - .Returns(true); - var codeDocumentProvider = new DefaultCodeDocumentProvider(bufferProvider.Object, vsCodeDocumentProvider.Object); - var document = new Mock(); - - // Act - var result = codeDocumentProvider.TryGetFromDocument(document.Object, out var codeDocument); - - // Assert - Assert.True(result); - Assert.Same(expectedCodeDocument, codeDocument); - } - } -} diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioDocumentTrackerFactoryTest.cs b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioDocumentTrackerFactoryTest.cs index ff06b4eb2b..6544ba0f85 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioDocumentTrackerFactoryTest.cs +++ b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioDocumentTrackerFactoryTest.cs @@ -7,6 +7,7 @@ using System.Collections.ObjectModel; using Microsoft.CodeAnalysis; using Microsoft.CodeAnalysis.Razor; using Microsoft.CodeAnalysis.Razor.ProjectSystem; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Text.Editor; diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioCodeDocumentProviderTest.cs b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/LegacyTextBufferCodeDocumentProviderTest.cs similarity index 90% rename from test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioCodeDocumentProviderTest.cs rename to test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/LegacyTextBufferCodeDocumentProviderTest.cs index 3eebcde7b0..f960a84ffe 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/DefaultVisualStudioCodeDocumentProviderTest.cs +++ b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Editor/LegacyTextBufferCodeDocumentProviderTest.cs @@ -2,6 +2,7 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using Microsoft.AspNetCore.Razor.Language; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Text; using Microsoft.VisualStudio.Utilities; using Moq; @@ -9,7 +10,7 @@ using Xunit; namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor { - public class DefaultVisualStudioCodeDocumentProviderTest + public class LegacyTextBufferCodeDocumentProviderTest { [Fact] public void TryGetFromBuffer_UsesVisualStudioRazorParserIfAvailable() @@ -22,7 +23,7 @@ namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor var textBuffer = new Mock(); textBuffer.Setup(buffer => buffer.Properties) .Returns(properties); - var provider = new DefaultVisualStudioCodeDocumentProvider(); + var provider = new LegacyTextBufferCodeDocumentProvider(); // Act var result = provider.TryGetFromBuffer(textBuffer.Object, out var codeDocument); @@ -43,7 +44,7 @@ namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor var textBuffer = new Mock(); textBuffer.Setup(buffer => buffer.Properties) .Returns(properties); - var provider = new DefaultVisualStudioCodeDocumentProvider(); + var provider = new LegacyTextBufferCodeDocumentProvider(); // Act var result = provider.TryGetFromBuffer(textBuffer.Object, out var codeDocument); @@ -67,7 +68,7 @@ namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor var textBuffer = new Mock(); textBuffer.Setup(buffer => buffer.Properties) .Returns(properties); - var provider = new DefaultVisualStudioCodeDocumentProvider(); + var provider = new LegacyTextBufferCodeDocumentProvider(); // Act var result = provider.TryGetFromBuffer(textBuffer.Object, out var codeDocument); @@ -85,7 +86,7 @@ namespace Microsoft.VisualStudio.LanguageServices.Razor.Editor var textBuffer = new Mock(); textBuffer.Setup(buffer => buffer.Properties) .Returns(properties); - var provider = new DefaultVisualStudioCodeDocumentProvider(); + var provider = new LegacyTextBufferCodeDocumentProvider(); // Act var result = provider.TryGetFromBuffer(textBuffer.Object, out var codeDocument); diff --git a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Microsoft.VisualStudio.LanguageServices.Razor.Test.csproj b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Microsoft.VisualStudio.LanguageServices.Razor.Test.csproj index 29cf10f6e8..61e68a3cb6 100644 --- a/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Microsoft.VisualStudio.LanguageServices.Razor.Test.csproj +++ b/test/Microsoft.VisualStudio.LanguageServices.Razor.Test/Microsoft.VisualStudio.LanguageServices.Razor.Test.csproj @@ -21,7 +21,7 @@ - + diff --git a/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoViewModel.cs b/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoViewModel.cs index b4bbc808c3..8e3c53d614 100644 --- a/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoViewModel.cs +++ b/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoViewModel.cs @@ -5,7 +5,7 @@ using System; using Microsoft.CodeAnalysis; -using Microsoft.VisualStudio.LanguageServices.Razor.Editor; +using Microsoft.VisualStudio.Editor.Razor; namespace Microsoft.VisualStudio.RazorExtension.DocumentInfo { diff --git a/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoWindow.cs b/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoWindow.cs index d93732c655..313f068573 100644 --- a/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoWindow.cs +++ b/tooling/Microsoft.VisualStudio.RazorExtension/DocumentInfo/RazorDocumentInfoWindow.cs @@ -6,10 +6,9 @@ using System; using System.Runtime.InteropServices; using System.Windows; -using Microsoft.CodeAnalysis.Razor; using Microsoft.VisualStudio.ComponentModelHost; using Microsoft.VisualStudio.Editor; -using Microsoft.VisualStudio.LanguageServices.Razor.Editor; +using Microsoft.VisualStudio.Editor.Razor; using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Shell.Interop; using Microsoft.VisualStudio.Text.Editor; diff --git a/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj b/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj index bf5dfc5b49..79308fb265 100644 --- a/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj +++ b/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj @@ -202,6 +202,15 @@ + + {0bcde75a-a438-46c7-95e9-391f029d07c5} + Microsoft.VisualStudio.Editor.Razor + False + + + + + {92114fe9-cb07-4712-9aa4-afab65ca28e1} Microsoft.VisualStudio.LanguageServices.Razor @@ -254,7 +263,6 @@ - - - + \ No newline at end of file diff --git a/tooling/Microsoft.VisualStudio.RazorExtension/Properties/BindingRedirectAttributes.cs b/tooling/Microsoft.VisualStudio.RazorExtension/Properties/BindingRedirectAttributes.cs index fa59580d9f..cbbdcdcba8 100644 --- a/tooling/Microsoft.VisualStudio.RazorExtension/Properties/BindingRedirectAttributes.cs +++ b/tooling/Microsoft.VisualStudio.RazorExtension/Properties/BindingRedirectAttributes.cs @@ -51,10 +51,18 @@ using Microsoft.VisualStudio.Shell; OldVersionUpperBound = "2.1.0.0", NewVersion = "2.1.0.0")] +[assembly: ProvideBindingRedirection( + AssemblyName = "Microsoft.VisualStudio.Editor.Razor", + GenerateCodeBase = true, + PublicKeyToken = "adb9793829ddae60", + OldVersionLowerBound = "0.0.0.0", + OldVersionUpperBound = "2.1.0.0", + NewVersion = "2.1.0.0")] + [assembly: ProvideBindingRedirection( AssemblyName = "Microsoft.VisualStudio.LanguageServices.Razor", GenerateCodeBase = true, PublicKeyToken = "adb9793829ddae60", OldVersionLowerBound = "0.0.0.0", OldVersionUpperBound = "2.1.0.0", - NewVersion = "2.1.0.0")] \ No newline at end of file + NewVersion = "2.1.0.0")] diff --git a/tooling/Microsoft.VisualStudio.RazorExtension/source.extension.vsixmanifest b/tooling/Microsoft.VisualStudio.RazorExtension/source.extension.vsixmanifest index 351d34eff4..253dcc8b70 100644 --- a/tooling/Microsoft.VisualStudio.RazorExtension/source.extension.vsixmanifest +++ b/tooling/Microsoft.VisualStudio.RazorExtension/source.extension.vsixmanifest @@ -36,5 +36,7 @@ + +