comparison src/testdir/test_profile.vim @ 32134:c8612da7564c v9.0.1398

patch 9.0.1398: profile test repeats the headers many times Commit: https://github.com/vim/vim/commit/c0bdbfb2ee026e913e23a5d6bcaa97d44d9a6406 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Mar 10 18:28:12 2023 +0000 patch 9.0.1398: profile test repeats the headers many times Problem: Profile test repeats the headers many times. Solution: Put the headers in script variables.
author Bram Moolenaar <Bram@vim.org>
date Fri, 10 Mar 2023 19:45:04 +0100
parents 457ea0570b6f
children 98774a275d6d
comparison
equal deleted inserted replaced
32133:b18c724af855 32134:c8612da7564c
3 source check.vim 3 source check.vim
4 CheckFeature profile 4 CheckFeature profile
5 5
6 source shared.vim 6 source shared.vim
7 source screendump.vim 7 source screendump.vim
8
9 let s:header = 'count total (s) self (s)'
10 let s:header_func = 'count total (s) self (s) function'
8 11
9 func Test_profile_func() 12 func Test_profile_func()
10 call RunProfileFunc('func', 'let', 'let') 13 call RunProfileFunc('func', 'let', 'let')
11 call RunProfileFunc('def', 'var', '') 14 call RunProfileFunc('def', 'var', '')
12 endfunc 15 endfunc
69 call assert_match('Defined:.*Xprofile_func.vim:3', lines[1]) 72 call assert_match('Defined:.*Xprofile_func.vim:3', lines[1])
70 call assert_equal('Called 2 times', lines[2]) 73 call assert_equal('Called 2 times', lines[2])
71 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3]) 74 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3])
72 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4]) 75 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4])
73 call assert_equal('', lines[5]) 76 call assert_equal('', lines[5])
74 call assert_equal('count total (s) self (s)', lines[6]) 77 call assert_equal(s:header, lines[6])
75 call assert_equal('', lines[7]) 78 call assert_equal('', lines[7])
76 call assert_equal('FUNCTION Foo2()', lines[8]) 79 call assert_equal('FUNCTION Foo2()', lines[8])
77 call assert_equal('Called 1 time', lines[10]) 80 call assert_equal('Called 1 time', lines[10])
78 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[11]) 81 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[11])
79 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[12]) 82 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[12])
80 call assert_equal('', lines[13]) 83 call assert_equal('', lines[13])
81 call assert_equal('count total (s) self (s)', lines[14]) 84 call assert_equal(s:header, lines[14])
82 call assert_match('^\s*1\s\+.*\s\(let\|var\) counter = 100$', lines[15]) 85 call assert_match('^\s*1\s\+.*\s\(let\|var\) counter = 100$', lines[15])
83 call assert_match('^\s*101\s\+.*\swhile counter > 0$', lines[16]) 86 call assert_match('^\s*101\s\+.*\swhile counter > 0$', lines[16])
84 call assert_match('^\s*100\s\+.*\s \(let\)\= counter = counter - 1$', lines[17]) 87 call assert_match('^\s*100\s\+.*\s \(let\)\= counter = counter - 1$', lines[17])
85 call assert_match('^\s*10[01]\s\+.*\sendwhile$', lines[18]) 88 call assert_match('^\s*10[01]\s\+.*\sendwhile$', lines[18])
86 call assert_match('^\s*1\s\+.\+sleep 1m$', lines[19]) 89 call assert_match('^\s*1\s\+.\+sleep 1m$', lines[19])
87 call assert_equal('', lines[20]) 90 call assert_equal('', lines[20])
88 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[21]) 91 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[21])
89 call assert_equal('count total (s) self (s) function', lines[22]) 92 call assert_equal(s:header_func, lines[22])
90 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[23]) 93 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[23])
91 call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[24]) 94 call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[24])
92 call assert_equal('', lines[25]) 95 call assert_equal('', lines[25])
93 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[26]) 96 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[26])
94 call assert_equal('count total (s) self (s) function', lines[27]) 97 call assert_equal(s:header_func, lines[27])
95 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[28]) 98 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[28])
96 call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[29]) 99 call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[29])
97 call assert_equal('', lines[30]) 100 call assert_equal('', lines[30])
98 101
99 call delete('Xprofile_func.log') 102 call delete('Xprofile_func.log')
161 call assert_match('Defined:.*Xprofile_func.vim', lines[1]) 164 call assert_match('Defined:.*Xprofile_func.vim', lines[1])
162 call assert_equal('Called 1 time', lines[2]) 165 call assert_equal('Called 1 time', lines[2])
163 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3]) 166 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3])
164 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4]) 167 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4])
165 call assert_equal('', lines[5]) 168 call assert_equal('', lines[5])
166 call assert_equal('count total (s) self (s)', lines[6]) 169 call assert_equal(s:header, lines[6])
167 call assert_match('^\s*1\s\+.*\sif 1$', lines[7]) 170 call assert_match('^\s*1\s\+.*\sif 1$', lines[7])
168 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 0$', lines[8]) 171 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 0$', lines[8])
169 call assert_match( '^\s\+elseif 1$', lines[9]) 172 call assert_match( '^\s\+elseif 1$', lines[9])
170 call assert_match( '^\s\+\(let\|var\) x = 1$', lines[10]) 173 call assert_match( '^\s\+\(let\|var\) x = 1$', lines[10])
171 call assert_match( '^\s\+else$', lines[11]) 174 call assert_match( '^\s\+else$', lines[11])
175 call assert_equal('FUNCTION Foo2()', lines[15]) 178 call assert_equal('FUNCTION Foo2()', lines[15])
176 call assert_equal('Called 1 time', lines[17]) 179 call assert_equal('Called 1 time', lines[17])
177 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[18]) 180 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[18])
178 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[19]) 181 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[19])
179 call assert_equal('', lines[20]) 182 call assert_equal('', lines[20])
180 call assert_equal('count total (s) self (s)', lines[21]) 183 call assert_equal(s:header, lines[21])
181 call assert_match('^\s*1\s\+.*\sif 0$', lines[22]) 184 call assert_match('^\s*1\s\+.*\sif 0$', lines[22])
182 call assert_match( '^\s\+\(let\|var\) x = 0$', lines[23]) 185 call assert_match( '^\s\+\(let\|var\) x = 0$', lines[23])
183 call assert_match('^\s*1\s\+.*\selseif 1$', lines[24]) 186 call assert_match('^\s*1\s\+.*\selseif 1$', lines[24])
184 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 1$', lines[25]) 187 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 1$', lines[25])
185 call assert_match( '^\s\+else$', lines[26]) 188 call assert_match( '^\s\+else$', lines[26])
189 call assert_equal('FUNCTION Foo3()', lines[30]) 192 call assert_equal('FUNCTION Foo3()', lines[30])
190 call assert_equal('Called 1 time', lines[32]) 193 call assert_equal('Called 1 time', lines[32])
191 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[33]) 194 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[33])
192 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[34]) 195 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[34])
193 call assert_equal('', lines[35]) 196 call assert_equal('', lines[35])
194 call assert_equal('count total (s) self (s)', lines[36]) 197 call assert_equal(s:header, lines[36])
195 call assert_match('^\s*1\s\+.*\sif 0$', lines[37]) 198 call assert_match('^\s*1\s\+.*\sif 0$', lines[37])
196 call assert_match( '^\s\+\(let\|var\) x = 0$', lines[38]) 199 call assert_match( '^\s\+\(let\|var\) x = 0$', lines[38])
197 call assert_match('^\s*1\s\+.*\selseif 0$', lines[39]) 200 call assert_match('^\s*1\s\+.*\selseif 0$', lines[39])
198 call assert_match( '^\s\+\(let\|var\) x = 1$', lines[40]) 201 call assert_match( '^\s\+\(let\|var\) x = 1$', lines[40])
199 call assert_match('^\s*1\s\+.*\selse$', lines[41]) 202 call assert_match('^\s*1\s\+.*\selse$', lines[41])
200 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 2$', lines[42]) 203 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 2$', lines[42])
201 call assert_match('^\s*1\s\+.*\sendif$', lines[43]) 204 call assert_match('^\s*1\s\+.*\sendif$', lines[43])
202 call assert_equal('', lines[44]) 205 call assert_equal('', lines[44])
203 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[45]) 206 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[45])
204 call assert_equal('count total (s) self (s) function', lines[46]) 207 call assert_equal(s:header_func, lines[46])
205 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[47]) 208 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[47])
206 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[48]) 209 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[48])
207 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[49]) 210 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[49])
208 call assert_equal('', lines[50]) 211 call assert_equal('', lines[50])
209 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[51]) 212 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[51])
210 call assert_equal('count total (s) self (s) function', lines[52]) 213 call assert_equal(s:header_func, lines[52])
211 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[53]) 214 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[53])
212 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[54]) 215 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[54])
213 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[55]) 216 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[55])
214 call assert_equal('', lines[56]) 217 call assert_equal('', lines[56])
215 218
287 call assert_match('Defined:.*Xprofile_func.vim', lines[1]) 290 call assert_match('Defined:.*Xprofile_func.vim', lines[1])
288 call assert_equal('Called 1 time', lines[2]) 291 call assert_equal('Called 1 time', lines[2])
289 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3]) 292 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3])
290 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4]) 293 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4])
291 call assert_equal('', lines[5]) 294 call assert_equal('', lines[5])
292 call assert_equal('count total (s) self (s)', lines[6]) 295 call assert_equal(s:header, lines[6])
293 call assert_match('^\s*1\s\+.*\stry$', lines[7]) 296 call assert_match('^\s*1\s\+.*\stry$', lines[7])
294 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 0$', lines[8]) 297 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 0$', lines[8])
295 call assert_match( '^\s\+catch$', lines[9]) 298 call assert_match( '^\s\+catch$', lines[9])
296 call assert_match( '^\s\+\(let\|var\) x = 1$', lines[10]) 299 call assert_match( '^\s\+\(let\|var\) x = 1$', lines[10])
297 call assert_match('^\s*1\s\+.*\sfinally$', lines[11]) 300 call assert_match('^\s*1\s\+.*\sfinally$', lines[11])
301 call assert_equal('FUNCTION Foo2()', lines[15]) 304 call assert_equal('FUNCTION Foo2()', lines[15])
302 call assert_equal('Called 1 time', lines[17]) 305 call assert_equal('Called 1 time', lines[17])
303 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[18]) 306 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[18])
304 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[19]) 307 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[19])
305 call assert_equal('', lines[20]) 308 call assert_equal('', lines[20])
306 call assert_equal('count total (s) self (s)', lines[21]) 309 call assert_equal(s:header, lines[21])
307 call assert_match('^\s*1\s\+.*\stry$', lines[22]) 310 call assert_match('^\s*1\s\+.*\stry$', lines[22])
308 call assert_match('^\s*1\s\+.*\s throw 0$', lines[23]) 311 call assert_match('^\s*1\s\+.*\s throw 0$', lines[23])
309 call assert_match('^\s*1\s\+.*\scatch$', lines[24]) 312 call assert_match('^\s*1\s\+.*\scatch$', lines[24])
310 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 1$', lines[25]) 313 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 1$', lines[25])
311 call assert_match('^\s*1\s\+.*\sfinally$', lines[26]) 314 call assert_match('^\s*1\s\+.*\sfinally$', lines[26])
315 call assert_equal('FUNCTION Foo3()', lines[30]) 318 call assert_equal('FUNCTION Foo3()', lines[30])
316 call assert_equal('Called 1 time', lines[32]) 319 call assert_equal('Called 1 time', lines[32])
317 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[33]) 320 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[33])
318 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[34]) 321 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[34])
319 call assert_equal('', lines[35]) 322 call assert_equal('', lines[35])
320 call assert_equal('count total (s) self (s)', lines[36]) 323 call assert_equal(s:header, lines[36])
321 call assert_match('^\s*1\s\+.*\stry$', lines[37]) 324 call assert_match('^\s*1\s\+.*\stry$', lines[37])
322 call assert_match('^\s*1\s\+.*\s throw 0$', lines[38]) 325 call assert_match('^\s*1\s\+.*\s throw 0$', lines[38])
323 call assert_match('^\s*1\s\+.*\scatch$', lines[39]) 326 call assert_match('^\s*1\s\+.*\scatch$', lines[39])
324 call assert_match('^\s*1\s\+.*\s throw 1$', lines[40]) 327 call assert_match('^\s*1\s\+.*\s throw 1$', lines[40])
325 call assert_match('^\s*1\s\+.*\sfinally$', lines[41]) 328 call assert_match('^\s*1\s\+.*\sfinally$', lines[41])
326 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 2$', lines[42]) 329 call assert_match('^\s*1\s\+.*\s \(let\|var\) x = 2$', lines[42])
327 call assert_match( '^\s\+endtry$', lines[43]) 330 call assert_match( '^\s\+endtry$', lines[43])
328 call assert_equal('', lines[44]) 331 call assert_equal('', lines[44])
329 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[45]) 332 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[45])
330 call assert_equal('count total (s) self (s) function', lines[46]) 333 call assert_equal(s:header_func, lines[46])
331 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[47]) 334 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[47])
332 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[48]) 335 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[48])
333 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[49]) 336 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[49])
334 call assert_equal('', lines[50]) 337 call assert_equal('', lines[50])
335 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[51]) 338 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[51])
336 call assert_equal('count total (s) self (s) function', lines[52]) 339 call assert_equal(s:header_func, lines[52])
337 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[53]) 340 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[53])
338 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[54]) 341 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[54])
339 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[55]) 342 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo.()$', lines[55])
340 call assert_equal('', lines[56]) 343 call assert_equal('', lines[56])
341 344
370 call assert_match('^SCRIPT .*Xprofile_file.vim$', lines[0]) 373 call assert_match('^SCRIPT .*Xprofile_file.vim$', lines[0])
371 call assert_equal('Sourced 2 times', lines[1]) 374 call assert_equal('Sourced 2 times', lines[1])
372 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[2]) 375 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[2])
373 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[3]) 376 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[3])
374 call assert_equal('', lines[4]) 377 call assert_equal('', lines[4])
375 call assert_equal('count total (s) self (s)', lines[5]) 378 call assert_equal(s:header, lines[5])
376 call assert_match(' 2 0.\d\+ func! Foo()', lines[6]) 379 call assert_match(' 2 0.\d\+ func! Foo()', lines[6])
377 call assert_equal(' endfunc', lines[7]) 380 call assert_equal(' endfunc', lines[7])
378 " Loop iterates 10 times. Since script runs twice, body executes 20 times. 381 " Loop iterates 10 times. Since script runs twice, body executes 20 times.
379 " First line of loop executes one more time than body to detect end of loop. 382 " First line of loop executes one more time than body to detect end of loop.
380 call assert_match('^\s*22\s\+\d\+\.\d\+\s\+for i in range(10)$', lines[8]) 383 call assert_match('^\s*22\s\+\d\+\.\d\+\s\+for i in range(10)$', lines[8])
412 call assert_match('^SCRIPT .*Xprofile_file.vim$', lines[0]) 415 call assert_match('^SCRIPT .*Xprofile_file.vim$', lines[0])
413 call assert_equal('Sourced 1 time', lines[1]) 416 call assert_equal('Sourced 1 time', lines[1])
414 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[2]) 417 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[2])
415 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[3]) 418 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[3])
416 call assert_equal('', lines[4]) 419 call assert_equal('', lines[4])
417 call assert_equal('count total (s) self (s)', lines[5]) 420 call assert_equal(s:header, lines[5])
418 call assert_match(' 1 0.\d\+ echo "hello', lines[6]) 421 call assert_match(' 1 0.\d\+ echo "hello', lines[6])
419 call assert_equal(' \ world"', lines[7]) 422 call assert_equal(' \ world"', lines[7])
420 call assert_match(' 1 0.\d\+ echo "foo ', lines[8]) 423 call assert_match(' 1 0.\d\+ echo "foo ', lines[8])
421 call assert_equal(' \bar"', lines[9]) 424 call assert_equal(' \bar"', lines[9])
422 call assert_equal('', lines[10]) 425 call assert_equal('', lines[10])
448 call assert_match('Defined:.*test_profile.vim:', lines[1]) 451 call assert_match('Defined:.*test_profile.vim:', lines[1])
449 call assert_equal('Called 1 time', lines[2]) 452 call assert_equal('Called 1 time', lines[2])
450 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3]) 453 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3])
451 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4]) 454 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4])
452 call assert_equal('', lines[5]) 455 call assert_equal('', lines[5])
453 call assert_equal('count total (s) self (s)', lines[6]) 456 call assert_equal(s:header, lines[6])
454 call assert_match('^\s*1\s\+.*\sreturn "Hello"$', lines[7]) 457 call assert_match('^\s*1\s\+.*\sreturn "Hello"$', lines[7])
455 call assert_equal('', lines[8]) 458 call assert_equal('', lines[8])
456 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[9]) 459 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[9])
457 call assert_equal('count total (s) self (s) function', lines[10]) 460 call assert_equal(s:header_func, lines[10])
458 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test1()$', lines[11]) 461 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test1()$', lines[11])
459 call assert_equal('', lines[12]) 462 call assert_equal('', lines[12])
460 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[13]) 463 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[13])
461 call assert_equal('count total (s) self (s) function', lines[14]) 464 call assert_equal(s:header_func, lines[14])
462 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test1()$', lines[15]) 465 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test1()$', lines[15])
463 call assert_equal('', lines[16]) 466 call assert_equal('', lines[16])
464 467
465 " Test for ':profile stop' for a different function 468 " Test for ':profile stop' for a different function
466 profile start Xprof2.out 469 profile start Xprof2.out
473 call assert_match('Defined:.*test_profile.vim:', lines[1]) 476 call assert_match('Defined:.*test_profile.vim:', lines[1])
474 call assert_equal('Called 1 time', lines[2]) 477 call assert_equal('Called 1 time', lines[2])
475 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3]) 478 call assert_match('^Total time:\s\+\d\+\.\d\+$', lines[3])
476 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4]) 479 call assert_match('^ Self time:\s\+\d\+\.\d\+$', lines[4])
477 call assert_equal('', lines[5]) 480 call assert_equal('', lines[5])
478 call assert_equal('count total (s) self (s)', lines[6]) 481 call assert_equal(s:header, lines[6])
479 call assert_match('^\s*1\s\+.*\sreturn "World"$', lines[7]) 482 call assert_match('^\s*1\s\+.*\sreturn "World"$', lines[7])
480 call assert_equal('', lines[8]) 483 call assert_equal('', lines[8])
481 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[9]) 484 call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[9])
482 call assert_equal('count total (s) self (s) function', lines[10]) 485 call assert_equal(s:header_func, lines[10])
483 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test2()$', lines[11]) 486 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test2()$', lines[11])
484 call assert_equal('', lines[12]) 487 call assert_equal('', lines[12])
485 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[13]) 488 call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[13])
486 call assert_equal('count total (s) self (s) function', lines[14]) 489 call assert_equal(s:header_func, lines[14])
487 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test2()$', lines[15]) 490 call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Xprof_test2()$', lines[15])
488 call assert_equal('', lines[16]) 491 call assert_equal('', lines[16])
489 492
490 " Test for ':profile dump' 493 " Test for ':profile dump'
491 profile start Xprof3.out 494 profile start Xprof3.out