public void ProjectSnapshotManager_DocumentRemoved_RepublishesTextChanges()
        {
            // Arrange
            var generatedDocumentPublisher = new DefaultGeneratedDocumentPublisher(Dispatcher, new Lazy <ILanguageServer>(() => Server));

            generatedDocumentPublisher.Initialize(ProjectManager);
            var sourceTextContent = "// The content";
            var initialSourceText = SourceText.From(sourceTextContent);

            generatedDocumentPublisher.PublishCSharp(HostDocument.FilePath, initialSourceText, 123);

            // Act
            ProjectManager.DocumentRemoved(HostProject, HostDocument);
            generatedDocumentPublisher.PublishCSharp(HostDocument.FilePath, initialSourceText, 123);

            // Assert
            Assert.Equal(2, Server.UpdateRequests.Count);
            var updateRequest = Server.UpdateRequests.Last();

            Assert.Equal(HostDocument.FilePath, updateRequest.HostDocumentFilePath);
            var textChange = Assert.Single(updateRequest.Changes);

            Assert.Equal(sourceTextContent, textChange.NewText);
            Assert.Equal(123, updateRequest.HostDocumentVersion);
        }
Esempio n. 2
0
        public void ProjectSnapshotManager_DocumentChanged_ClosedDocument_RepublishesTextChanges()
        {
            // Arrange
            var generatedDocumentPublisher = new DefaultGeneratedDocumentPublisher(Dispatcher, ServerClient, LoggerFactory);

            generatedDocumentPublisher.Initialize(ProjectManager);
            var sourceTextContent = "// The content";
            var initialSourceText = SourceText.From(sourceTextContent);

            generatedDocumentPublisher.PublishCSharp(HostDocument.FilePath, initialSourceText, 123);
            ProjectManager.DocumentOpened(HostProject.FilePath, HostDocument.FilePath, initialSourceText);

            // Act
            ProjectManager.DocumentClosed(HostProject.FilePath, HostDocument.FilePath, new EmptyTextLoader(HostDocument.FilePath));
            generatedDocumentPublisher.PublishCSharp(HostDocument.FilePath, initialSourceText, 123);

            // Assert
            Assert.Equal(2, ServerClient.UpdateRequests.Count);
            var updateRequest = ServerClient.UpdateRequests.Last();

            Assert.Equal(HostDocument.FilePath, updateRequest.HostDocumentFilePath);
            var textChange = Assert.Single(updateRequest.Changes);

            Assert.Equal(sourceTextContent, textChange.NewText);
            Assert.Equal(123, updateRequest.HostDocumentVersion);
        }
        public void ProjectSnapshotManager_DocumentChanged_OpenDocument_VersionEquivalent_Noops_Html()
        {
            // Arrange
            var generatedDocumentPublisher = new DefaultGeneratedDocumentPublisher(Dispatcher, new Lazy <ILanguageServer>(() => Server));

            generatedDocumentPublisher.Initialize(ProjectManager);
            var sourceTextContent = "<!-- The content -->";
            var initialSourceText = SourceText.From(sourceTextContent);

            generatedDocumentPublisher.PublishHtml(HostDocument.FilePath, initialSourceText, 123);

            // Act
            ProjectManager.DocumentOpened(HostProject.FilePath, HostDocument.FilePath, initialSourceText);
            generatedDocumentPublisher.PublishHtml(HostDocument.FilePath, initialSourceText, 123);

            // Assert
            var updateRequest = Assert.Single(Server.UpdateRequests);

            Assert.Equal(HostDocument.FilePath, updateRequest.HostDocumentFilePath);
            Assert.Equal(123, updateRequest.HostDocumentVersion);
        }
Esempio n. 4
0
        public void ProjectSnapshotManager_DocumentChanged_OpenDocument_VersionEquivalent_Noops_CSharp()
        {
            // Arrange
            var generatedDocumentPublisher = new DefaultGeneratedDocumentPublisher(Dispatcher, ServerClient, LoggerFactory);

            generatedDocumentPublisher.Initialize(ProjectManager);
            var sourceTextContent = "// The content";
            var initialSourceText = SourceText.From(sourceTextContent);

            generatedDocumentPublisher.PublishCSharp(HostDocument.FilePath, initialSourceText, 123);

            // Act
            ProjectManager.DocumentOpened(HostProject.FilePath, HostDocument.FilePath, initialSourceText);
            generatedDocumentPublisher.PublishCSharp(HostDocument.FilePath, initialSourceText, 123);

            // Assert
            var updateRequest = Assert.Single(ServerClient.UpdateRequests);

            Assert.Equal(HostDocument.FilePath, updateRequest.HostDocumentFilePath);
            Assert.Equal(123, updateRequest.HostDocumentVersion);
        }
Esempio n. 5
0
        public void ProjectSnapshotManager_DocumentChanged_OpenDocument_PublishesEmptyTextChanges_Html()
        {
            // Arrange
            var generatedDocumentPublisher = new DefaultGeneratedDocumentPublisher(Dispatcher, ServerClient, LoggerFactory);

            generatedDocumentPublisher.Initialize(ProjectManager);
            var sourceTextContent = "<!-- The content -->";
            var initialSourceText = SourceText.From(sourceTextContent);

            generatedDocumentPublisher.PublishHtml(HostDocument.FilePath, initialSourceText, 123);

            // Act
            ProjectManager.DocumentOpened(HostProject.FilePath, HostDocument.FilePath, initialSourceText);
            generatedDocumentPublisher.PublishHtml(HostDocument.FilePath, initialSourceText, 124);

            // Assert
            Assert.Equal(2, ServerClient.UpdateRequests.Count);
            var updateRequest = ServerClient.UpdateRequests.Last();

            Assert.Equal(HostDocument.FilePath, updateRequest.HostDocumentFilePath);
            Assert.Empty(updateRequest.Changes);
            Assert.Equal(124, updateRequest.HostDocumentVersion);
        }