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 RazorProximityExpressionsEndpoint(Dispatcher, documentResolver, MappingService, LoggerFactory); var request = new RazorProximityExpressionsParams() { Uri = new Uri(documentPath), Position = new Position(1, 0) }; // Act var response = await Task.Run(() => diagnosticsEndpoint.Handle(request, default)); // Assert Assert.Null(response); }
public async Task Handle_StartsInHtml_ReturnsValidExpressions() { // Arrange var documentPath = "C:/path/to/document.cshtml"; var codeDocument = CreateCodeDocument(@" <p>@{var abc = 123;}</p>"); var documentResolver = CreateDocumentResolver(documentPath, codeDocument); var endpoint = new RazorProximityExpressionsEndpoint(Dispatcher, documentResolver, MappingService, LoggerFactory); var request = new RazorProximityExpressionsParams() { Uri = new Uri(documentPath), Position = new Position(1, 0) }; // Act var response = await Task.Run(() => endpoint.Handle(request, default)); // Assert Assert.Contains("abc", response !.Expressions); Assert.Contains("this", response !.Expressions); }