diff options
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/test_visual.vim | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/src/testdir/test_visual.vim b/src/testdir/test_visual.vim index 795f63e49f..b80f43eedd 100644 --- a/src/testdir/test_visual.vim +++ b/src/testdir/test_visual.vim @@ -1747,7 +1747,7 @@ func Test_visual_getregion() #" using the wrong type call assert_fails(':echo "."->getpos()->getregion("$", [])', 'E1211:') - #" using a mark in another buffer + #" using a mark from another buffer to current buffer new VAR newbuf = bufnr() call setline(1, range(10)) @@ -1757,6 +1757,20 @@ func Test_visual_getregion() call assert_equal([], getregion(getpos('.'), getpos("'A"), {'type': 'v' })) call assert_equal([], getregion(getpos("'A"), getpos('.'), {'type': 'v' })) exe $':{newbuf}bwipe!' + + #" using a mark from another buffer to another buffer + new + VAR anotherbuf = bufnr() + call setline(1, range(10)) + normal! GmA + normal! GmB + wincmd p + call assert_equal([anotherbuf, 10, 1, 0], getpos("'A")) + call assert_equal(['9'], getregion(getpos("'B"), getpos("'A"), {'type': 'v' })) + exe $':{anotherbuf}bwipe!' + + #" using invalid buffer + call assert_equal([], getregion([10000, 10, 1, 0], [10000, 10, 1, 0])) END call v9.CheckLegacyAndVim9Success(lines) @@ -1907,4 +1921,18 @@ func Test_visual_getregion() call v9.CheckLegacyAndVim9Success(lines) endfunc +func Test_getregion_invalid_buf() + new + help + call cursor(5, 7) + norm! mA + call cursor(5, 18) + norm! mB + call assert_equal(['Move around:'], getregion(getpos("'A"), getpos("'B"))) + " close the help window + q + call assert_equal([], getregion(getpos("'A"), getpos("'B"))) + bwipe! +endfunc + " vim: shiftwidth=2 sts=2 expandtab |