示例#1
0
        public void Start_DontResetSelection()
        {
            Create(VisualKind.Character, "");
            var realView  = CreateTextView("foo bar baz");
            var selection = new Mock <ITextSelection>(MockBehavior.Strict);
            var snapshot  = new Mock <ITextSnapshot>(MockBehavior.Strict);

            snapshot.SetupGet(x => x.Length).Returns(1);
            selection.SetupGet(x => x.IsEmpty).Returns(false).Verifiable();
            var nonEmptySpan = new VirtualSnapshotSpan(new SnapshotSpan(snapshot.Object, new Span(0, 1)));

            selection.SetupGet(x => x.StreamSelectionSpan).Returns(nonEmptySpan).Verifiable();
            selection.SetupGet(x => x.IsReversed).Returns(false).Verifiable();
            selection.SetupGet(x => x.AnchorPoint).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 0));
            selection.SetupGet(x => x.ActivePoint).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 1));
            selection.SetupGet(x => x.End).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 1));
            selection.SetupProperty(x => x.Mode);
            var view = new Mock <ITextView>(MockBehavior.Strict);

            view.SetupGet(x => x.TextBuffer).Returns(realView.TextBuffer);
            view.SetupGet(x => x.Caret).Returns(realView.Caret);
            view.SetupGet(x => x.TextSnapshot).Returns(realView.TextSnapshot);
            view.SetupGet(x => x.Selection).Returns(selection.Object);
            var vimTextBuffer = new Mock <IVimTextBuffer>(MockBehavior.Strict);

            vimTextBuffer.SetupGet(x => x.LocalSettings).Returns(new LocalSettings(_globalSettings));
            vimTextBuffer.SetupGet(x => x.UseVirtualSpace).Returns(false);
            vimTextBuffer.SetupSet(x => x.LastVisualSelection = It.IsAny <Microsoft.FSharp.Core.FSharpOption <VisualSelection> >());
            var vimBufferData = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, view.Object);
            var tracker       = new SelectionTracker(vimBufferData, _commonOperations, _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            selection.Verify();
        }
示例#2
0
        public void Start_DontResetSelection()
        {
            Create(VisualKind.Character, "");
            var realView  = CreateTextView("foo bar baz");
            var selection = new Mock <ITextSelection>(MockBehavior.Strict);

            selection.SetupGet(x => x.IsEmpty).Returns(false).Verifiable();
            selection.SetupGet(x => x.IsReversed).Returns(false).Verifiable();
            selection.SetupGet(x => x.AnchorPoint).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 0));
            selection.SetupProperty(x => x.Mode);
            var view = new Mock <ITextView>(MockBehavior.Strict);

            view.SetupGet(x => x.TextBuffer).Returns(realView.TextBuffer);
            view.SetupGet(x => x.Caret).Returns(realView.Caret);
            view.SetupGet(x => x.TextSnapshot).Returns(realView.TextSnapshot);
            view.SetupGet(x => x.Selection).Returns(selection.Object);
            var vimTextBuffer = new Mock <IVimTextBuffer>(MockBehavior.Strict);

            vimTextBuffer.SetupGet(x => x.LocalSettings).Returns(new LocalSettings(_globalSettings));
            var vimBufferData = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, view.Object);
            var tracker       = new SelectionTracker(vimBufferData, _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            selection.Verify();
        }
示例#3
0
 private void Create(VisualKind kind, int caretPosition, params string[] lines)
 {
     _textView = CreateTextView(lines);
     _textView.MoveCaretTo(caretPosition);
     _globalSettings    = new GlobalSettings();
     _incrementalSearch = new Mock <IIncrementalSearch>(MockBehavior.Loose);
     _tracker           = new SelectionTracker(_textView, _globalSettings, _incrementalSearch.Object, kind);
     _tracker.Start();
 }
示例#4
0
        public void Start4()
        {
            var view = EditorUtil.CreateTextView("foo bar baz");

            view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
            var tracker = new SelectionTracker(view, _settings, _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            Assert.AreEqual(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position.Position);
        }
示例#5
0
        public void Start4()
        {
            Create(VisualKind.Character);
            var view = CreateTextView("foo bar baz");

            view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
            var tracker = new SelectionTracker(view, new LocalSettings(_globalSettings), _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            Assert.Equal(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position);
        }
示例#6
0
 private void Create(VisualKind kind, int caretPosition, params string[] lines)
 {
     _textView = CreateTextView(lines);
     _textView.MoveCaretTo(caretPosition);
     _globalSettings = new GlobalSettings();
     var localSettings = new LocalSettings(_globalSettings);
     var vimTextBuffer = MockObjectFactory.CreateVimTextBuffer(_textView.TextBuffer, localSettings);
     _vimBufferData = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, _textView);
     _incrementalSearch = new Mock<IIncrementalSearch>(MockBehavior.Loose);
     _tracker = new SelectionTracker(_vimBufferData, _incrementalSearch.Object, kind);
     _tracker.Start();
 }
示例#7
0
        private void Create(VisualKind kind, int caretPosition, params string[] lines)
        {
            _textView = CreateTextView(lines);
            _textView.MoveCaretTo(caretPosition);
            _globalSettings = new GlobalSettings();
            var localSettings = new LocalSettings(_globalSettings);
            var vimTextBuffer = MockObjectFactory.CreateVimTextBuffer(_textView.TextBuffer, localSettings);

            _vimBufferData     = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, _textView);
            _incrementalSearch = new Mock <IIncrementalSearch>(MockBehavior.Loose);
            _tracker           = new SelectionTracker(_vimBufferData, _incrementalSearch.Object, kind);
            _tracker.Start();
        }
示例#8
0
        public void Start4()
        {
            Create(VisualKind.Character);
            var view = CreateTextView("foo bar baz");

            view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
            var vimTextBuffer = new Mock <IVimTextBuffer>(MockBehavior.Strict);

            vimTextBuffer.SetupGet(x => x.LocalSettings).Returns(new LocalSettings(_globalSettings));
            var vimBufferData = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, view);
            var tracker       = new SelectionTracker(vimBufferData, _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            Assert.Equal(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position);
        }
示例#9
0
        public void Start3()
        {
            var realView  = EditorUtil.CreateTextView("foo bar baz");
            var selection = new Mock <ITextSelection>(MockBehavior.Strict);

            selection.SetupGet(x => x.IsEmpty).Returns(false).Verifiable();
            selection.SetupGet(x => x.Mode).Returns(TextSelectionMode.Stream);
            selection.SetupGet(x => x.AnchorPoint).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 0));
            var view = new Mock <ITextView>(MockBehavior.Strict);

            view.SetupGet(x => x.TextBuffer).Returns(realView.TextBuffer);
            view.SetupGet(x => x.Caret).Returns(realView.Caret);
            view.SetupGet(x => x.TextSnapshot).Returns(realView.TextSnapshot);
            view.SetupGet(x => x.Selection).Returns(selection.Object);
            var tracker = new SelectionTracker(view.Object, _settings, _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            selection.Verify();
        }
示例#10
0
        public void Start4()
        {
            Create(VisualKind.Character);
            var view = CreateTextView("foo bar baz");

            view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
            var vimTextBuffer = new Mock <IVimTextBuffer>(MockBehavior.Strict);

            vimTextBuffer.SetupGet(x => x.Vim).Returns(Vim);
            vimTextBuffer.SetupGet(x => x.UndoRedoOperations).Returns(_vimBufferData.VimTextBuffer.UndoRedoOperations);
            vimTextBuffer.SetupGet(x => x.WordNavigator).Returns(_vimBufferData.VimTextBuffer.WordNavigator);
            vimTextBuffer.SetupGet(x => x.WordUtil).Returns(_vimBufferData.VimTextBuffer.WordUtil);
            vimTextBuffer.SetupGet(x => x.LocalSettings).Returns(_vimBufferData.VimTextBuffer.LocalSettings);
            vimTextBuffer.SetupGet(x => x.UseVirtualSpace).Returns(false);
            vimTextBuffer.SetupSet(x => x.LastVisualSelection = It.IsAny <Microsoft.FSharp.Core.FSharpOption <VisualSelection> >());
            var vimBufferData    = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, view);
            var commonOperations = CommonOperationsFactory.GetCommonOperations(vimBufferData);
            var tracker          = new SelectionTracker(vimBufferData, commonOperations, _incrementalSearch.Object, VisualKind.Character);

            tracker.Start();
            Assert.Equal(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position);
        }
示例#11
0
 private void Create(VisualKind kind, int caretPosition, params string[] lines)
 {
     _textView = CreateTextView(lines);
     _textView.MoveCaretTo(caretPosition);
     _globalSettings = new GlobalSettings();
     _incrementalSearch = new Mock<IIncrementalSearch>(MockBehavior.Loose);
     _tracker = new SelectionTracker(_textView, _globalSettings, _incrementalSearch.Object, kind);
     _tracker.Start();
 }
示例#12
0
 public void Start4()
 {
     Create(VisualKind.Character);
     var view = CreateTextView("foo bar baz");
     view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
     var vimTextBuffer = new Mock<IVimTextBuffer>(MockBehavior.Strict);
     vimTextBuffer.SetupGet(x => x.LocalSettings).Returns(new LocalSettings(_globalSettings));
     var vimBufferData = MockObjectFactory.CreateVimBufferData(vimTextBuffer.Object, view);
     var tracker = new SelectionTracker(vimBufferData, _incrementalSearch.Object, VisualKind.Character);
     tracker.Start();
     Assert.Equal(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position);
 }
示例#13
0
 public void Start1()
 {
     Create(VisualKind.Character, "foo");
     Assert.Throws <InvalidOperationException>(() => _tracker.Start());
 }
示例#14
0
 private void Create(SelectionMode mode, params string[] lines)
 {
     _view = EditorUtil.CreateView(lines);
     _tracker = new SelectionTracker(_view, mode);
     _tracker.Start();
 }
示例#15
0
 private void Create(VisualKind kind, int caretPosition, params string[] lines)
 {
     _view = EditorUtil.CreateView(lines);
     _view.MoveCaretTo(caretPosition);
     _settings = new Vim.GlobalSettings();
     _tracker = new SelectionTracker(_view, _settings, kind);
     _tracker.Start();
 }
示例#16
0
 public void Start4()
 {
     var view = EditorUtil.CreateView("foo bar baz");
     view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
     var tracker = new SelectionTracker(view, SelectionMode.Character);
     tracker.Start();
     Assert.AreEqual(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position.Position);
 }
示例#17
0
 public void Start3()
 {
     var realView = EditorUtil.CreateView("foo bar baz");
     var selection = new Mock<ITextSelection>(MockBehavior.Strict);
     selection.SetupGet(x => x.IsEmpty).Returns(false).Verifiable();
     selection.SetupGet(x => x.Mode).Returns(TextSelectionMode.Stream);
     selection.SetupGet(x => x.AnchorPoint).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 0));
     var view = new Mock<ITextView>(MockBehavior.Strict);
     view.SetupGet(x => x.TextBuffer).Returns(realView.TextBuffer);
     view.SetupGet(x => x.Caret).Returns(realView.Caret);
     view.SetupGet(x => x.TextSnapshot).Returns(realView.TextSnapshot);
     view.SetupGet(x => x.Selection).Returns(selection.Object);
     var tracker = new SelectionTracker(view.Object, SelectionMode.Character);
     tracker.Start();
     selection.Verify();
 }
示例#18
0
 public void Start1()
 {
     Create(VisualKind.Character, "foo");
     _tracker.Start();
 }
示例#19
0
 public void Start4()
 {
     Create(VisualKind.Character);
     var view = CreateTextView("foo bar baz");
     view.Selection.Select(new SnapshotSpan(view.TextSnapshot, 1, 3), false);
     var tracker = new SelectionTracker(view, _globalSettings, _incrementalSearch.Object, VisualKind.Character);
     tracker.Start();
     Assert.Equal(view.Selection.AnchorPoint.Position.Position, tracker.AnchorPoint.Position);
 }
示例#20
0
 public void Start_DontResetSelection()
 {
     Create(VisualKind.Character, "");
     var realView = CreateTextView("foo bar baz");
     var selection = new Mock<ITextSelection>(MockBehavior.Strict);
     selection.SetupGet(x => x.IsEmpty).Returns(false).Verifiable();
     selection.SetupGet(x => x.AnchorPoint).Returns(new VirtualSnapshotPoint(realView.TextSnapshot, 0));
     selection.SetupProperty(x => x.Mode);
     var view = new Mock<ITextView>(MockBehavior.Strict);
     view.SetupGet(x => x.TextBuffer).Returns(realView.TextBuffer);
     view.SetupGet(x => x.Caret).Returns(realView.Caret);
     view.SetupGet(x => x.TextSnapshot).Returns(realView.TextSnapshot);
     view.SetupGet(x => x.Selection).Returns(selection.Object);
     var tracker = new SelectionTracker(view.Object, _globalSettings, _incrementalSearch.Object, VisualKind.Character);
     tracker.Start();
     selection.Verify();
 }