예제 #1
0
        public void IncrementalSearch_Forward()
        {
            _textView.SetText("hello world", caret: 0);
            var data        = Process("/world", enter: true).AsComplete().Item;
            var patternData = VimUtil.CreatePatternData("world", Path.Forward);

            Assert.Equal(Motion.NewSearch(patternData), data);
        }
            public void OutSideSpan()
            {
                Create("foo is the bar");
                _vimData.LastPatternData = VimUtil.CreatePatternData("foo");
                var ret = GetTags(new SnapshotSpan(_textBuffer.CurrentSnapshot, 4, 3));

                Assert.Equal(0, ret.Count());
            }
            public void PatternEmpty()
            {
                Create("dog cat");
                _vimData.LastPatternData = VimUtil.CreatePatternData("");
                var ret = GetTags(_textBuffer.GetExtent());

                Assert.Equal(0, ret.Count());
            }
            public void WithMatch()
            {
                Create("foo is the bar");
                _vimData.LastPatternData = VimUtil.CreatePatternData("foo");
                var ret = GetTags(_textBuffer.GetExtent());

                Assert.Equal(1, ret.Count());
                Assert.Equal(new SnapshotSpan(_textBuffer.CurrentSnapshot, 0, 3), ret.Single().Span);
            }
            public void NotVisible()
            {
                Create("dog cat");
                _vimData.LastPatternData         = VimUtil.CreatePatternData("dog");
                _asyncTaggerSourceRaw._isVisible = false;
                var ret = TryGetTagsPrompt(_textBuffer.GetExtent());

                Assert.Equal(0, ret.Count);
            }
            public void OneTimeDisabled()
            {
                Create("dog cat");
                _vimData.LastPatternData = VimUtil.CreatePatternData("dog");
                _asyncTaggerSourceRaw._oneTimeDisabled = true;
                var ret = TryGetTagsPrompt(_textBuffer.GetExtent());

                Assert.Equal(0, ret.Count);
            }
            public void HighlightDisabled()
            {
                Create("dog cat");
                _vimData.LastPatternData        = VimUtil.CreatePatternData("dog");
                _globalSettings.HighlightSearch = false;
                var ret = TryGetTagsPrompt(_textBuffer.GetExtent());

                Assert.Equal(0, ret.Count);
            }
예제 #8
0
        public void IncrementalSearch_Reverse()
        {
            _textView.TextBuffer.SetText("hello world");
            _textView.MoveCaretTo(_textView.GetEndPoint().Position);
            var data        = Process("?world", enter: true).AsComplete().Item;
            var patternData = VimUtil.CreatePatternData("world", Path.Backward);

            Assert.Equal(Motion.NewSearch(patternData), data);
        }
예제 #9
0
            public void OneTimeDisabled()
            {
                Create("dog cat");
                _vimData.LastPatternData = VimUtil.CreatePatternData("dog");
                _vimData.SuspendDisplayPattern();
                var ret = TryGetTagsPrompt(_textBuffer.GetExtent());

                Assert.Equal(0, ret.Count);
            }
예제 #10
0
        public void LastSearch1()
        {
            Create(" foo bar");
            var data = VimUtil.CreatePatternData("foo", Path.Forward);

            ProcessWithEnter("foo");
            Assert.Equal(data, _vimData.LastPatternData);
            _factory.Verify();
        }
            public void ZeroLengthResults()
            {
                Create("cat");
                _vimData.LastPatternData = VimUtil.CreatePatternData(@"\|i\>");
                var ret = GetTags(_textBuffer.GetExtent());

                Assert.Equal(
                    new[] { "cat" },
                    ret.Select(x => x.Span.GetText()).ToList());
            }
예제 #12
0
        public void LastSearch2()
        {
            Create(" foo bar");

            ProcessWithEnter("foo bar");
            Assert.Equal(VimUtil.CreatePatternData("foo bar", Path.Forward), _vimData.LastPatternData);
            _factory.Verify();

            _textView.MoveCaretTo(0);
            ProcessWithEnter("bar");
            Assert.Equal(VimUtil.CreatePatternData("bar", Path.Forward), _vimData.LastPatternData);
            _factory.Verify();
        }
예제 #13
0
        public void CurrentSearchComplete_FireWhenDone()
        {
            Create("cat foo bar");
            var didRun = false;

            _search.CurrentSearchCompleted +=
                (unused, args) =>
            {
                Assert.Equal("foo", args.SearchResult.SearchData.Pattern);
                Assert.True(args.SearchResult.IsFound);
                didRun = true;
            };

            ProcessWithEnter("foo");
            Assert.True(didRun);
            Assert.Equal(VimUtil.CreatePatternData("foo", Path.Forward), _vimData.LastPatternData);
        }