summaryrefslogtreecommitdiff
path: root/src/testdir
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-11-30 21:38:24 +0100
committerBram Moolenaar <Bram@vim.org>2015-11-30 21:38:24 +0100
commit683fa185a4b4ed7595e5942901548b8239ed5cdb (patch)
tree72dc382b7d35b2efe9cc966a3049f8a61d462559 /src/testdir
parent43345546ae63710441f066648b8485fb545b3801 (diff)
downloadvim-git-683fa185a4b4ed7595e5942901548b8239ed5cdb.tar.gz
patch 7.4.945v7.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.
Diffstat (limited to 'src/testdir')
-rw-r--r--src/testdir/Makefile3
-rw-r--r--src/testdir/test100.in41
-rw-r--r--src/testdir/test100.ok41
-rw-r--r--src/testdir/test_assert.vim18
-rw-r--r--src/testdir/test_undolevels.vim46
5 files changed, 59 insertions, 90 deletions
diff --git a/src/testdir/Makefile b/src/testdir/Makefile
index 03384aa41..3f65f435d 100644
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -68,7 +68,8 @@ SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
test_utf8.out \
test_writefile.out
-NEW_TESTS = test_assert.res
+NEW_TESTS = test_assert.res \
+ test_undolevels.res
SCRIPTS_GUI = test16.out
diff --git a/src/testdir/test100.in b/src/testdir/test100.in
index 7bd88fe9c..9b140a4d2 100644
--- a/src/testdir/test100.in
+++ b/src/testdir/test100.in
@@ -1,45 +1,8 @@
-Tests for 'undolevel' and 'lispwords' settings being global-local
+Tests for 'lispwords' settings being global-local
STARTTEST
:so small.vim
-:set nocompatible viminfo+=nviminfo ul=5
-:fu! FillBuffer()
- :for i in range(1,13)
- :put=i
- :exe "setg ul=" . &g:ul
- :endfor
-:endfu
-:fu! UndoLevel()
- :redir @a | setglobal undolevels? | echon ' global' | setlocal undolevels? | echon ' local' |redir end
- :$put a
-:endfu
-:new one
-:0put ='ONE: expecting global undolevels: 5, local undolevels: -123456 (default)'
-:call FillBuffer()
-:earlier 10
-:call UndoLevel()
-:set ff=unix
-:%w! test.out
-:new two
-:0put ='TWO: expecting global undolevels: 5, local undolevels: 2 (first) then 10 (afterwards)'
-:setlocal ul=2
-:call FillBuffer()
-:earlier 10
-:call UndoLevel()
-:setlocal ul=10
-:call UndoLevel()
-:set ff=unix
-:%w >> test.out
-:wincmd p
-:redir >>test.out | echo "global value shouldn't be changed and still be 5!" | echo 'ONE: expecting global undolevels: 5, local undolevels: -123456 (default)'|:setglobal undolevels? | echon ' global' | setlocal undolevels? | echon ' local' |echo "" |redir end
-:new three
-:setglobal ul=50
-:1put ='global value should be changed to 50'
-:2put ='THREE: expecting global undolevels: 50, local undolevels: -123456 (default)'
-:call UndoLevel()
-:set ff=unix
-:%w >> test.out
-:"sleep 10
+:set nocompatible viminfo+=nviminfo
:"
:" Testing 'lispwords'
:"
diff --git a/src/testdir/test100.ok b/src/testdir/test100.ok
index 477106b8f..4048dee4c 100644
--- a/src/testdir/test100.ok
+++ b/src/testdir/test100.ok
@@ -1,44 +1,3 @@
-ONE: expecting global undolevels: 5, local undolevels: -123456 (default)
-1
-2
-3
-4
-5
-6
-7
-
-
- undolevels=5 global
- undolevels=-123456 local
-TWO: expecting global undolevels: 5, local undolevels: 2 (first) then 10 (afterwards)
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-
-
- undolevels=5 global
- undolevels=2 local
-
- undolevels=5 global
- undolevels=10 local
-
-global value shouldn't be changed and still be 5!
-ONE: expecting global undolevels: 5, local undolevels: -123456 (default)
- undolevels=5 global
- undolevels=-123456 local
-
-global value should be changed to 50
-THREE: expecting global undolevels: 50, local undolevels: -123456 (default)
-
- undolevels=50 global
- undolevels=-123456 local
Testing 'lispwords' local value
lispwords=foo,bar,baz
diff --git a/src/testdir/test_assert.vim b/src/testdir/test_assert.vim
index 61c77c575..049ce9885 100644
--- a/src/testdir/test_assert.vim
+++ b/src/testdir/test_assert.vim
@@ -1,19 +1,19 @@
" Test that the methods used for testing work.
-func Test_assertFalse()
- call assertFalse(0)
+func Test_assert_false()
+ call assert_false(0)
endfunc
-func Test_assertTrue()
- call assertTrue(1)
- call assertTrue(123)
+func Test_assert_true()
+ call assert_true(1)
+ call assert_true(123)
endfunc
-func Test_assertEqual()
+func Test_assert_equal()
let s = 'foo'
- call assertEqual('foo', s)
+ call assert_equal('foo', s)
let n = 4
- call assertEqual(4, n)
+ call assert_equal(4, n)
let l = [1, 2, 3]
- call assertEqual([1, 2, 3], l)
+ call assert_equal([1, 2, 3], l)
endfunc
diff --git a/src/testdir/test_undolevels.vim b/src/testdir/test_undolevels.vim
new file mode 100644
index 000000000..427cece24
--- /dev/null
+++ b/src/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