public async Task Handle_MapToDocumentRange_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, LoggerFactory);
            var request          = new RazorMapToDocumentRangeParams()
            {
                Kind             = RazorLanguageKind.CSharp,
                ProjectedRange   = 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(RazorLanguageEndpoint.UndefinedRange, response.Range);
            Assert.Equal(1337, response.HostDocumentVersion);
        }
        public async Task Handle_MapToDocumentRange_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, LoggerFactory);
            var request          = new RazorMapToDocumentRangeParams()
            {
                Kind             = RazorLanguageKind.Razor,
                ProjectedRange   = 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.ProjectedRange, response.Range);
            Assert.Equal(1337, response.HostDocumentVersion);
        }