public void TryGetDocument_UntrackedDocument_ReturnsFalse() { // Arrange var manager = new DefaultLSPDocumentManager(JoinableTaskContext, UriProvider, LSPDocumentFactory, ChangeTriggers); manager.TrackDocument(TextBuffer); manager.UntrackDocument(TextBuffer); // Act var result = manager.TryGetDocument(Uri, out var lspDocument); // Assert Assert.False(result); Assert.Null(lspDocument); }
public void UntrackDocument_TriggersDocumentRemoved() { // Arrange var manager = new DefaultLSPDocumentManager(JoinableTaskContext, UriProvider, LSPDocumentFactory, ChangeTriggers); manager.TrackDocument(TextBuffer); var changedCalled = false; manager.Changed += (sender, args) => { changedCalled = true; Assert.Null(args.New); Assert.Same(LSPDocumentSnapshot, args.Old); Assert.Equal(LSPDocumentChangeKind.Removed, args.Kind); }; // Act manager.UntrackDocument(TextBuffer); // Assert Assert.True(changedCalled); }