public void TextBuffer_OnChanged_NoopsIfNoChanges() { // Arrange var editorOperationsFactory = new Mock <IEditorOperationsFactoryService>(); var changeCollection = new TestTextChangeCollection(); var textContentChangeArgs = new TestTextContentChangedEventArgs(changeCollection); var documentTracker = CreateDocumentTracker(() => Mock.Of <ITextBuffer>(), Mock.Of <ITextView>()); var braceSmartIndenter = new BraceSmartIndenter(Dispatcher, documentTracker, editorOperationsFactory.Object); // Act & Assert braceSmartIndenter.TextBuffer_OnChanged(null, textContentChangeArgs); }
public void TextChangeOccurred_NoChanges_ReturnsFalse() { // Arrange var before = new StringTextSnapshot(string.Empty); var after = new StringTextSnapshot(string.Empty); var testArgs = new TestTextContentChangedEventArgs(before, after); // Act var result = testArgs.TextChangeOccurred(out _); // Assert Assert.False(result); }
public void TextBuffer_OnChanged_NoopsIfNoChanges() { // Arrange var editorOperationsFactory = new Mock <IEditorOperationsFactoryService>(MockBehavior.Strict); var changeCollection = new TestTextChangeCollection(); var textContentChangeArgs = new TestTextContentChangedEventArgs(changeCollection); var documentTracker = CreateDocumentTracker(() => Mock.Of <ITextBuffer>(MockBehavior.Strict), Mock.Of <ITextView>(MockBehavior.Strict)); var codeDocumentProvider = Mock.Of <TextBufferCodeDocumentProvider>(MockBehavior.Strict); using var braceSmartIndenter = new BraceSmartIndenter(JoinableTaskFactory.Context, documentTracker, codeDocumentProvider, editorOperationsFactory.Object); // Act & Assert braceSmartIndenter.TextBuffer_OnChanged(null, textContentChangeArgs); }
public void TextChangeOccurred_CancelingChanges_ReturnsFalse() { // Arrange var before = new StringTextSnapshot("by"); before.Version.Changes.Add(new TestTextChange(new SourceChange(0, 2, "hi"))); before.Version.Changes.Add(new TestTextChange(new SourceChange(0, 2, "by"))); var after = new StringTextSnapshot("by"); var testArgs = new TestTextContentChangedEventArgs(before, after); // Act var result = testArgs.TextChangeOccurred(out _); // Assert Assert.False(result); }
public void TextChangeOccurred_SingleChange_ReturnsTrue() { // Arrange var before = new StringTextSnapshot("by"); var firstChange = new TestTextChange(new SourceChange(0, 2, "hi")); before.Version.Changes.Add(firstChange); var after = new StringTextSnapshot("hi"); var testArgs = new TestTextContentChangedEventArgs(before, after); // Act var result = testArgs.TextChangeOccurred(out var changeInformation); // Assert Assert.True(result); Assert.Same(firstChange, changeInformation.firstChange); Assert.Equal(firstChange, changeInformation.lastChange); Assert.Equal("hi", changeInformation.newText); Assert.Equal("by", changeInformation.oldText); }