Mercurial > vim
view src/testdir/test_undolevels.vim @ 8870:30988ffb7498 v7.4.1722
commit https://github.com/vim/vim/commit/0239acb11fe4bfe9b525ea90b782759da5eb7704
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Apr 11 21:02:54 2016 +0200
patch 7.4.1722
Problem: Crash when calling garbagecollect() after starting a job.
Solution: Set the copyID on job and channel. (Hirohito Higashi, Ozaki
Kiichi)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 11 Apr 2016 21:15:05 +0200 |
parents | 17bbbca531be |
children | 5deb9e8f4292 |
line wrap: on
line source
" Tests for 'undolevels' func FillBuffer() for i in range(1,13) put=i " Set 'undolevels' to split undo. exe "setg ul=" . &g:ul endfor endfunc func Test_global_local_undolevels() new one set undolevels=5 call FillBuffer() " will only undo the last 5 changes, end up with 13 - (5 + 1) = 7 lines earlier 10 call assert_equal(5, &g:undolevels) call assert_equal(-123456, &l:undolevels) call assert_equal('7', getline('$')) new two setlocal undolevels=2 call FillBuffer() " will only undo the last 2 changes, end up with 13 - (2 + 1) = 10 lines earlier 10 call assert_equal(5, &g:undolevels) call assert_equal(2, &l:undolevels) call assert_equal('10', getline('$')) setlocal ul=10 call assert_equal(5, &g:undolevels) call assert_equal(10, &l:undolevels) " Setting local value in "two" must not change local value in "one" wincmd p call assert_equal(5, &g:undolevels) call assert_equal(-123456, &l:undolevels) new three setglobal ul=50 call assert_equal(50, &g:undolevels) call assert_equal(-123456, &l:undolevels) endfunc