aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorwatiko <service@mail.watiko.net>2015-12-13 20:15:48 +0900
committerwatiko <service@mail.watiko.net>2016-01-10 09:01:30 +0900
commit008c014cbe0fd4862dd989287aca1050d2ed89b1 (patch)
treedcef9ebb53addd7946917dd5873499328b6f1414 /src
parent593df501b3a3687abb14a84299716bcd328b6ff8 (diff)
downloadrneovim-008c014cbe0fd4862dd989287aca1050d2ed89b1.tar.gz
rneovim-008c014cbe0fd4862dd989287aca1050d2ed89b1.tar.bz2
rneovim-008c014cbe0fd4862dd989287aca1050d2ed89b1.zip
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
Diffstat (limited to 'src')
-rw-r--r--src/nvim/testdir/Makefile3
-rw-r--r--src/nvim/testdir/test_undolevels.vim46
-rw-r--r--src/nvim/version.c2
3 files changed, 49 insertions, 2 deletions
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,