vim-patch:8.2.0398: profile test fails when two functions take same time

Problem:    Profile test fails when two functions take same time.
Solution:   Add a short sleep in once function. (closes vim/vim#5797)
a21df1db3c
This commit is contained in:
Jan Edmund Lazo
2020-03-17 19:58:32 -04:00
parent a15750321b
commit 60a7184185

View File

@@ -16,6 +16,7 @@ func Test_profile_func()
while l:count > 0 while l:count > 0
let l:count = l:count - 1 let l:count = l:count - 1
endwhile endwhile
sleep 1m
endfunc endfunc
func! Foo3() func! Foo3()
endfunc endfunc
@@ -51,7 +52,7 @@ func Test_profile_func()
" - Unlike Foo3(), Foo2() should not be deleted since there is a check " - Unlike Foo3(), Foo2() should not be deleted since there is a check
" for v:profiling. " for v:profiling.
" - Bar() is not reported since it does not match "profile func Foo*". " - Bar() is not reported since it does not match "profile func Foo*".
call assert_equal(30, len(lines)) call assert_equal(31, len(lines))
call assert_equal('FUNCTION Foo1()', lines[0]) call assert_equal('FUNCTION Foo1()', lines[0])
call assert_match('Defined:.*Xprofile_func.vim:3', lines[1]) call assert_match('Defined:.*Xprofile_func.vim:3', lines[1])
@@ -71,17 +72,18 @@ func Test_profile_func()
call assert_match('^\s*101\s\+.*\swhile l:count > 0$', lines[16]) call assert_match('^\s*101\s\+.*\swhile l:count > 0$', lines[16])
call assert_match('^\s*100\s\+.*\s let l:count = l:count - 1$', lines[17]) call assert_match('^\s*100\s\+.*\s let l:count = l:count - 1$', lines[17])
call assert_match('^\s*101\s\+.*\sendwhile$', lines[18]) call assert_match('^\s*101\s\+.*\sendwhile$', lines[18])
call assert_equal('', lines[19]) call assert_match('^\s*1\s\+.\+sleep 1m$', lines[19])
call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[20]) call assert_equal('', lines[20])
call assert_equal('count total (s) self (s) function', lines[21]) call assert_equal('FUNCTIONS SORTED ON TOTAL TIME', lines[21])
call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[22]) call assert_equal('count total (s) self (s) function', lines[22])
call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[23]) call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[23])
call assert_equal('', lines[24]) call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[24])
call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[25]) call assert_equal('', lines[25])
call assert_equal('count total (s) self (s) function', lines[26]) call assert_equal('FUNCTIONS SORTED ON SELF TIME', lines[26])
call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[27]) call assert_equal('count total (s) self (s) function', lines[27])
call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[28]) call assert_match('^\s*1\s\+\d\+\.\d\+\s\+Foo2()$', lines[28])
call assert_equal('', lines[29]) call assert_match('^\s*2\s\+\d\+\.\d\+\s\+Foo1()$', lines[29])
call assert_equal('', lines[30])
call delete('Xprofile_func.vim') call delete('Xprofile_func.vim')
call delete('Xprofile_func.log') call delete('Xprofile_func.log')