diff options
author | LemonBoy <thatlemon@gmail.com> | 2022-04-10 17:59:26 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-04-10 17:59:26 +0100 |
commit | db0ea7f2b00c84d84f188c9e9953c4f1887528e7 (patch) | |
tree | 3e51f520d137d74254d1b78d64d9a0c0b057714e /src/testdir | |
parent | e08fde007308fffec818b4ad6eccf573f54bed5b (diff) |
patch 8.2.4731: the changelist index is not remembered per bufferv8.2.4731
Problem: The changelist index is not remembered per buffer.
Solution: Keep the changelist index per window and buffer. (closes #10135,
closes #2173)
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/test_changelist.vim | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/src/testdir/test_changelist.vim b/src/testdir/test_changelist.vim index 872b87ae47..f429968218 100644 --- a/src/testdir/test_changelist.vim +++ b/src/testdir/test_changelist.vim @@ -1,6 +1,28 @@ " Tests for the changelist functionality " Tests for the getchangelist() function +func Test_changelist_index() + edit Xfile1.txt + exe "normal iabc\<C-G>u\ndef\<C-G>u\nghi" + call assert_equal(3, getchangelist('%')[1]) + " Move one step back in the changelist. + normal 2g; + + hide edit Xfile2.txt + exe "normal iabcd\<C-G>u\ndefg\<C-G>u\nghij" + call assert_equal(3, getchangelist('%')[1]) + " Move to the beginning of the changelist. + normal 99g; + + " Check the changelist indices. + call assert_equal(0, getchangelist('%')[1]) + call assert_equal(1, getchangelist('#')[1]) + + bwipe! + call delete('Xfile1.txt') + call delete('Xfile2.txt') +endfunc + func Test_getchangelist() bwipe! enew @@ -11,6 +33,7 @@ func Test_getchangelist() call writefile(['line1', 'line2', 'line3'], 'Xfile2.txt') edit Xfile1.txt + let buf_1 = bufnr() exe "normal 1Goline\<C-G>u1.1" exe "normal 3Goline\<C-G>u2.1" exe "normal 5Goline\<C-G>u3.1" @@ -22,6 +45,7 @@ func Test_getchangelist() \ getchangelist('%')) hide edit Xfile2.txt + let buf_2 = bufnr() exe "normal 1GOline\<C-G>u1.0" exe "normal 2Goline\<C-G>u2.0" call assert_equal([[ @@ -33,10 +57,12 @@ func Test_getchangelist() call assert_equal([[ \ {'lnum' : 2, 'col' : 4, 'coladd' : 0}, \ {'lnum' : 4, 'col' : 4, 'coladd' : 0}, - \ {'lnum' : 6, 'col' : 4, 'coladd' : 0}], 3], getchangelist(2)) + \ {'lnum' : 6, 'col' : 4, 'coladd' : 0}], 2], + \ getchangelist(buf_1)) call assert_equal([[ \ {'lnum' : 1, 'col' : 6, 'coladd' : 0}, - \ {'lnum' : 3, 'col' : 6, 'coladd' : 0}], 2], getchangelist(3)) + \ {'lnum' : 3, 'col' : 6, 'coladd' : 0}], 2], + \ getchangelist(buf_2)) bwipe! call delete('Xfile1.txt') |