Skip to content

Commit 8220f53

Browse files
committed
Try to fix flaky vim test
1 parent 38dd801 commit 8220f53

2 files changed

Lines changed: 26 additions & 2 deletions

File tree

test/vim-simple-test.vim

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
let s:suite = themis#suite('pses')
22
let s:assert = themis#helper('assert')
33

4+
function s:wait_for_diagnostics(bufname, expected)
5+
let l:attempts = 20
6+
while l:attempts > 0
7+
if getbufvar(a:bufname, 'LanguageClient_statusLineDiagnosticsCounts') == a:expected
8+
return
9+
endif
10+
11+
execute 'sleep 500m'
12+
let l:attempts -= 1
13+
endwhile
14+
endfunction
15+
416
function s:suite.before()
517
let l:pses_path = g:repo_root . '/module'
618
let g:LanguageClient_serverCommands = {
@@ -33,7 +45,7 @@ function s:suite.analyzes_powershell_file()
3345
call s:assert.equal(getbufvar(l:bufinfo.bufnr, '&filetype'), 'ps1')
3446

3547
execute 'LanguageClientStart'
36-
execute 'sleep' 5
48+
call s:wait_for_diagnostics(l:bufinfo.name, {'E': 0, 'W': 1, 'H': 0, 'I': 0})
3749
call s:assert.equal(getbufvar(l:bufinfo.name, 'LanguageClient_isServerRunning'), 1)
3850
call s:assert.equal(getbufvar(l:bufinfo.name, 'LanguageClient_projectRoot'), g:repo_root)
3951
call s:assert.equal(getbufvar(l:bufinfo.name, 'LanguageClient_statusLineDiagnosticsCounts'), {'E': 0, 'W': 1, 'H': 0, 'I': 0})

test/vim-test.vim

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
let s:suite = themis#suite('pses')
22
let s:assert = themis#helper('assert')
33

4+
function s:wait_for_diagnostics(bufname, expected)
5+
let l:attempts = 20
6+
while l:attempts > 0
7+
if getbufvar(a:bufname, 'LanguageClient_statusLineDiagnosticsCounts') == a:expected
8+
return
9+
endif
10+
11+
execute 'sleep 500m'
12+
let l:attempts -= 1
13+
endwhile
14+
endfunction
15+
416
function s:suite.before()
517
let l:pses_path = g:repo_root . '/module'
618
let g:LanguageClient_serverCommands = {
@@ -37,7 +49,7 @@ function s:suite.analyzes_powershell_file()
3749
call s:assert.equal(getbufvar(l:bufinfo.bufnr, '&filetype'), 'ps1')
3850

3951
execute 'LanguageClientStart'
40-
execute 'sleep' 5
52+
call s:wait_for_diagnostics(l:bufinfo.name, {'E': 0, 'W': 1, 'H': 0, 'I': 0})
4153
call s:assert.equal(getbufvar(l:bufinfo.name, 'LanguageClient_isServerRunning'), 1)
4254
call s:assert.equal(getbufvar(l:bufinfo.name, 'LanguageClient_projectRoot'), g:repo_root)
4355
call s:assert.equal(getbufvar(l:bufinfo.name, 'LanguageClient_statusLineDiagnosticsCounts'), {'E': 0, 'W': 1, 'H': 0, 'I': 0})

0 commit comments

Comments
 (0)