Mercurial > vim
view src/testdir/test_changedtick.vim @ 13280:fbda23eb0996 v8.0.1514
patch 8.0.1514: getting the list of changes is not easy
commit https://github.com/vim/vim/commit/07ad816525da67cab3c0db21d1286d221dbc7477
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Feb 13 13:59:59 2018 +0100
patch 8.0.1514: getting the list of changes is not easy
Problem: Getting the list of changes is not easy.
Solution: Add the getchangelist() function. (Yegappan Lakshmanan,
closes #2634)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 13 Feb 2018 14:15:05 +0100 |
parents | fd1760f8c215 |
children | 1f418d27e11f |
line wrap: on
line source
" Tests for b:changedtick func Test_changedtick_increments() new " New buffer has an empty line, tick starts at 2. let expected = 2 call assert_equal(expected, b:changedtick) call assert_equal(expected, b:['changedtick']) call setline(1, 'hello') let expected += 1 call assert_equal(expected, b:changedtick) call assert_equal(expected, b:['changedtick']) undo " Somehow undo counts as two changes. let expected += 2 call assert_equal(expected, b:changedtick) call assert_equal(expected, b:['changedtick']) bwipe! endfunc func Test_changedtick_dict_entry() let d = b: call assert_equal(b:changedtick, d['changedtick']) endfunc func Test_changedtick_bdel() new let bnr = bufnr('%') let v = b:changedtick bdel " Delete counts as a change too. call assert_equal(v + 1, getbufvar(bnr, 'changedtick')) endfunc func Test_changedtick_islocked() call assert_equal(0, islocked('b:changedtick')) let d = b: call assert_equal(0, islocked('d.changedtick')) endfunc func Test_changedtick_fixed() call assert_fails('let b:changedtick = 4', 'E46:') call assert_fails('let b:["changedtick"] = 4', 'E46:') call assert_fails('lockvar b:changedtick', 'E940:') call assert_fails('lockvar b:["changedtick"]', 'E46:') call assert_fails('unlockvar b:changedtick', 'E940:') call assert_fails('unlockvar b:["changedtick"]', 'E46:') call assert_fails('unlet b:changedtick', 'E795:') call assert_fails('unlet b:["changedtick"]', 'E46:') let d = b: call assert_fails('lockvar d["changedtick"]', 'E46:') call assert_fails('unlockvar d["changedtick"]', 'E46:') call assert_fails('unlet d["changedtick"]', 'E46:') endfunc