comparison src/testdir/runtest.vim @ 10100:26441931dad7 v7.4.2321

commit https://github.com/vim/vim/commit/dac1947bb366ef43cd6da95acc730554e76d8b84 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Sep 3 22:35:40 2016 +0200 patch 7.4.2321 Problem: When a test is commented out we forget about it. Solution: Let a test throw an exception with "Skipped" and list skipped test functions. (Christian Brabandt)
author Christian Brabandt <cb@256bit.org>
date Sat, 03 Sep 2016 22:45:06 +0200
parents 30be4b26a37e
children 2392e065efea
comparison
equal deleted inserted replaced
10099:79b8acf5996d 10100:26441931dad7
94 94
95 call add(s:messages, 'Executing ' . a:test) 95 call add(s:messages, 'Executing ' . a:test)
96 let s:done += 1 96 let s:done += 1
97 try 97 try
98 exe 'call ' . a:test 98 exe 'call ' . a:test
99 catch /^\cskipped/
100 call add(s:messages, ' Skipped')
101 call add(s:skipped, 'SKIPPED ' . a:test . ': ' . substitute(v:exception, '^\S*\s\+', '', ''))
99 catch 102 catch
100 call add(v:errors, 'Caught exception in ' . a:test . ': ' . v:exception . ' @ ' . v:throwpoint) 103 call add(v:errors, 'Caught exception in ' . a:test . ': ' . v:exception . ' @ ' . v:throwpoint)
101 endtry 104 endtry
102 105
103 if exists("*TearDown") 106 if exists("*TearDown")
125 let g:testname = expand('%') 128 let g:testname = expand('%')
126 let s:done = 0 129 let s:done = 0
127 let s:fail = 0 130 let s:fail = 0
128 let s:errors = [] 131 let s:errors = []
129 let s:messages = [] 132 let s:messages = []
133 let s:skipped = []
130 if expand('%') =~ 'test_viml.vim' 134 if expand('%') =~ 'test_viml.vim'
131 " this test has intentional s:errors, don't use try/catch. 135 " this test has intentional s:errors, don't use try/catch.
132 source % 136 source %
133 else 137 else
134 try 138 try
198 echo message 202 echo message
199 call add(s:messages, message) 203 call add(s:messages, message)
200 call extend(s:messages, s:errors) 204 call extend(s:messages, s:errors)
201 endif 205 endif
202 206
203 " Append messages to "messages" 207 " Add SKIPPED messages
208 call extend(s:messages, s:skipped)
209
210 " Append messages to the file "messages"
204 split messages 211 split messages
205 call append(line('$'), '') 212 call append(line('$'), '')
206 call append(line('$'), 'From ' . g:testname . ':') 213 call append(line('$'), 'From ' . g:testname . ':')
207 call append(line('$'), s:messages) 214 call append(line('$'), s:messages)
208 write 215 write