Пример #1
0
        public async Task ProcessDiagnosticsAsync_ReturnsResponse()
        {
            // Arrange
            var response = new RazorDiagnosticsResponse()
            {
                HostDocumentVersion = 5
            };

            var requestInvoker = new Mock <LSPRequestInvoker>(MockBehavior.Strict);

            requestInvoker.Setup(ri => ri.ReinvokeRequestOnServerAsync <RazorDiagnosticsParams, RazorDiagnosticsResponse>(
                                     It.IsAny <ITextBuffer>(),
                                     LanguageServerConstants.RazorTranslateDiagnosticsEndpoint,
                                     RazorLSPConstants.RazorLanguageServerName,
                                     It.IsAny <RazorDiagnosticsParams>(),
                                     It.IsAny <CancellationToken>()))
            .Returns(Task.FromResult(new ReinvocationResponse <RazorDiagnosticsResponse>("TestLanguageClient", response)));
            var documentUri     = new Uri("file://C:/path/to/file.razor");
            var documentManager = new TestDocumentManager();

            documentManager.AddDocument(documentUri, new TestLSPDocumentSnapshot(documentUri, version: 0, "The content"));
            var diagnosticsProvider = new DefaultLSPDiagnosticsTranslator(documentManager, requestInvoker.Object, LoggerProvider);

            // Act
            var diagnosticsResponse = await diagnosticsProvider.TranslateAsync(
                RazorLanguageKind.CSharp,
                documentUri,
                Array.Empty <Diagnostic>(),
                CancellationToken.None).ConfigureAwait(false);

            // Assert
            Assert.Equal(5, diagnosticsResponse.HostDocumentVersion);
        }
Пример #2
0
        public async Task ProcessDiagnosticsAsync_ReturnsResponse()
        {
            // Arrange
            var response = new RazorDiagnosticsResponse()
            {
                HostDocumentVersion = 5
            };

            var requestInvoker = new Mock <LSPRequestInvoker>(MockBehavior.Strict);

            requestInvoker.Setup(ri => ri.ReinvokeRequestOnServerAsync <RazorDiagnosticsParams, RazorDiagnosticsResponse>(
                                     LanguageServerConstants.RazorTranslateDiagnosticsEndpoint,
                                     RazorLSPConstants.RazorLSPContentTypeName,
                                     It.IsAny <RazorDiagnosticsParams>(),
                                     It.IsAny <CancellationToken>()))
            .Returns(Task.FromResult(response));

            var diagnosticsProvider = new DefaultLSPDiagnosticsTranslator(requestInvoker.Object);

            // Act
            var diagnosticsResponse = await diagnosticsProvider.TranslateAsync(
                RazorLanguageKind.CSharp,
                new Uri("file://C:/path/to/file"),
                Array.Empty <Diagnostic>(),
                CancellationToken.None).ConfigureAwait(false);

            // Assert
            Assert.Equal(5, diagnosticsResponse.HostDocumentVersion);
        }