public async Task Handle_MapToDocumentRanges_CSharp_Unmapped() { // Arrange var documentPath = "C:/path/to/document.cshtml"; var codeDocument = CreateCodeDocumentWithCSharpProjection( "<p>@DateTime.Now</p>", "var __o = DateTime.Now", new[] { new SourceMapping( new SourceSpan(4, 12), new SourceSpan(10, 12)) }); var documentResolver = CreateDocumentResolver(documentPath, codeDocument); var languageEndpoint = new RazorLanguageEndpoint(Dispatcher, documentResolver, DocumentVersionCache, MappingService, Mock.Of <RazorFormattingService>(MockBehavior.Strict), LoggerFactory); var request = new RazorMapToDocumentRangesParams() { Kind = RazorLanguageKind.CSharp, ProjectedRanges = new[] { new Range(new Position(0, 0), new Position(0, 3)) }, RazorDocumentUri = new Uri(documentPath), }; // Act var response = await Task.Run(() => languageEndpoint.Handle(request, default)); // Assert Assert.Equal(RangeExtensions.UndefinedRange, response.Ranges[0]); Assert.Equal(1337, response.HostDocumentVersion); }
public async Task Handle_MapToDocumentRanges_Razor() { // Arrange var documentPath = "C:/path/to/document.cshtml"; var codeDocument = CreateCodeDocument("<p>@DateTime.Now</p>"); var documentResolver = CreateDocumentResolver(documentPath, codeDocument); var languageEndpoint = new RazorLanguageEndpoint(Dispatcher, documentResolver, DocumentVersionCache, MappingService, Mock.Of <RazorFormattingService>(MockBehavior.Strict), LoggerFactory); var request = new RazorMapToDocumentRangesParams() { Kind = RazorLanguageKind.Razor, ProjectedRanges = new[] { new Range(new Position(0, 3), new Position(0, 4)) }, RazorDocumentUri = new Uri(documentPath), }; // Act var response = await Task.Run(() => languageEndpoint.Handle(request, default)); // Assert Assert.Equal(request.ProjectedRanges[0], response.Ranges[0]); Assert.Equal(1337, response.HostDocumentVersion); }