コード例 #1
0
        public async Task Handle_StartInHtml_NoCSharpOnLine_ReturnsNull()
        {
            // Arrange
            var documentPath     = "C:/path/to/document.cshtml";
            var codeDocument     = CreateCodeDocument(@"
<p></p>");
            var documentResolver = CreateDocumentResolver(documentPath, codeDocument);

            var diagnosticsEndpoint = new RazorBreakpointSpanEndpoint(Dispatcher, documentResolver, MappingService, LoggerFactory);
            var request             = new RazorBreakpointSpanParams()
            {
                Uri      = new Uri(documentPath),
                Position = new Position(1, 0)
            };

            // Act
            var response = await Task.Run(() => diagnosticsEndpoint.Handle(request, default));

            // Assert
            Assert.Null(response);
        }
コード例 #2
0
        public async Task Handle_StartsInHtml_BreakpointMoved()
        {
            // Arrange
            var documentPath     = "C:/path/to/document.cshtml";
            var codeDocument     = CreateCodeDocument(@"
<p>@{var abc = 123;}</p>");
            var documentResolver = CreateDocumentResolver(documentPath, codeDocument);

            var diagnosticsEndpoint = new RazorBreakpointSpanEndpoint(Dispatcher, documentResolver, MappingService, LoggerFactory);
            var request             = new RazorBreakpointSpanParams()
            {
                Uri      = new Uri(documentPath),
                Position = new Position(1, 0)
            };
            var expectedRange = new Range(new Position(1, 5), new Position(1, 19));

            // Act
            var response = await Task.Run(() => diagnosticsEndpoint.Handle(request, default));

            // Assert
            Assert.Equal(expectedRange, response !.Range);
        }