private static void TestSyntaxTreeFactoryService(ISyntaxTreeFactoryService service, string text, string fileName) { var parseOptions = service.GetDefaultParseOptions(); var workspaceServices = new TestWorkspaceServiceProvider(); var tree = service.ParseSyntaxTree( fileName, parseOptions, SourceText.From(text), CancellationToken.None); var textAndVersion = TextAndVersion.Create( tree.GetText(), VersionStamp.Create(), fileName); var valueSource = new AsyncLazy<TextAndVersion>(textAndVersion); var recoverableTree = service.CreateRecoverableTree( tree.FilePath, tree.Options, valueSource, tree.GetRoot()); workspaceServices.GetService<ISyntaxTreeCacheService>().Clear(); var trivia = tree.GetRoot().GetLeadingTrivia().First(); var actualTrivia = recoverableTree.GetRoot().GetLeadingTrivia().First(); Assert.Equal(trivia.ToFullString(), actualTrivia.ToFullString()); }
private static void TestSyntaxTreeFactoryService(ISyntaxTreeFactoryService service, string text, string fileName) { var parseOptions = service.GetDefaultParseOptions(); var workspaceServices = new TestWorkspaceServiceProvider(); var tree = service.ParseSyntaxTree( fileName, parseOptions, SourceText.From(text), CancellationToken.None); var textAndVersion = TextAndVersion.Create( tree.GetText(), VersionStamp.Create(), fileName); var valueSource = new AsyncLazy <TextAndVersion>(textAndVersion); var recoverableTree = service.CreateRecoverableTree( tree.FilePath, tree.Options, valueSource, tree.GetRoot()); workspaceServices.GetService <ISyntaxTreeCacheService>().Clear(); var trivia = tree.GetRoot().GetLeadingTrivia().First(); var actualTrivia = recoverableTree.GetRoot().GetLeadingTrivia().First(); Assert.Equal(trivia.ToFullString(), actualTrivia.ToFullString()); }
public void CSharpSyntaxTreeFactoryServiceTest() { var workspaceServices = new TestWorkspaceServiceProvider(); var service = workspaceServices.GetService<ILanguageServiceProviderFactory>().GetLanguageServiceProvider(LanguageNames.CSharp).GetService<ISyntaxTreeFactoryService>(); var text = @"/// <summary>XML</summary> class C { }"; var fileName = @"C:\1.cs"; TestSyntaxTreeFactoryService(service, text, fileName); }
public void CSharpSyntaxTreeFactoryServiceTest() { var workspaceServices = new TestWorkspaceServiceProvider(); var service = workspaceServices.GetService <ILanguageServiceProviderFactory>().GetLanguageServiceProvider(LanguageNames.CSharp).GetService <ISyntaxTreeFactoryService>(); var text = @"/// <summary>XML</summary> class C { }"; var fileName = @"C:\1.cs"; TestSyntaxTreeFactoryService(service, text, fileName); }
public void VisualBasicSyntaxTreeFactoryServiceTest() { var workspaceServices = new TestWorkspaceServiceProvider(); var service = workspaceServices.GetService<ILanguageServiceProviderFactory>().GetLanguageServiceProvider(LanguageNames.VisualBasic).GetService<ISyntaxTreeFactoryService>(); var text = @"''' <summary>XML</summary> Class C End Class"; var fileName = @"C:\1.vb"; TestSyntaxTreeFactoryService(service, text, fileName); }
public void VisualBasicSyntaxTreeFactoryServiceTest() { var workspaceServices = new TestWorkspaceServiceProvider(); var service = workspaceServices.GetService <ILanguageServiceProviderFactory>().GetLanguageServiceProvider(LanguageNames.VisualBasic).GetService <ISyntaxTreeFactoryService>(); var text = @"''' <summary>XML</summary> Class C End Class"; var fileName = @"C:\1.vb"; TestSyntaxTreeFactoryService(service, text, fileName); }