From 008c014cbe0fd4862dd989287aca1050d2ed89b1 Mon Sep 17 00:00:00 2001 From: watiko Date: Sun, 13 Dec 2015 20:15:48 +0900 Subject: vim-patch:7.4.945 Problem: New style testing is incomplete. Solution: Add the runtest script to the list of distributed files. Add the new functions to the function overview. Rename the functions to match Vim function style. Move undolevels testing into a new style test script. https://github.com/vim/vim/commit/683fa185a4b4ed7595e5942901548b8239ed5cdb --- src/nvim/testdir/Makefile | 3 ++- src/nvim/testdir/test_undolevels.vim | 46 ++++++++++++++++++++++++++++++++++++ src/nvim/version.c | 2 +- 3 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 src/nvim/testdir/test_undolevels.vim (limited to 'src') diff --git a/src/nvim/testdir/Makefile b/src/nvim/testdir/Makefile index 57d356705e..23a9b97d91 100644 --- a/src/nvim/testdir/Makefile +++ b/src/nvim/testdir/Makefile @@ -31,7 +31,8 @@ SCRIPTS := test_eval.out \ test_command_count.out \ test_cdo.out \ -NEW_TESTS = test_assert.res +NEW_TESTS = test_assert.res \ + test_undolevels.res SCRIPTS_GUI := test16.out diff --git a/src/nvim/testdir/test_undolevels.vim b/src/nvim/testdir/test_undolevels.vim new file mode 100644 index 0000000000..427cece24c --- /dev/null +++ b/src/nvim/testdir/test_undolevels.vim @@ -0,0 +1,46 @@ +" Tests for 'undolevels' + +set nocompatible viminfo+=nviminfo + +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 diff --git a/src/nvim/version.c b/src/nvim/version.c index e1b16d099b..45f3c39466 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -124,7 +124,7 @@ static int included_patches[] = { // 948 NA // 947, // 946, - // 945, + 945, 944, // 943, // 942, -- cgit