@@ -20,38 +20,32 @@ function s:suite.has_language_client()
2020endfunction
2121
2222function s: suite .analyzes_powershell_file ()
23- view test/vim - test.ps1 " This must not use quotes!
23+ let l: test_file = resolve (g: repo_root . ' /test/vim-test.ps1' )
24+ execute ' view ' . fnameescape (l: test_file )
2425
2526 let l: bufnr = bufnr (' vim-test.ps1$' )
2627 call s: assert .not_equal (l: bufnr , -1 )
2728 let l: bufinfo = getbufinfo (l: bufnr )[0 ]
2829
29- call s: assert .equal (l: bufinfo .name, g: repo_root . ' /test/vim-test.ps1 ' )
30- call s: assert .includes (getbufline (l: bufinfo .name , 1 ), ' function Do-Work {}' )
31- " TODO: This shouldn't be necessary, vim-ps1 works locally but not in CI.
32- call setbufvar ( l: bufinfo . bufnr , ' & filetype' , ' ps1' )
33- call s: assert .equal (getbufvar ( l: bufinfo . bufnr , ' &filetype' ) , ' ps1' )
30+ call s: assert .equal (resolve ( l: bufinfo .name), l: test_file )
31+ call s: assert .includes (getbufline (l: bufinfo .bufnr , 1 ), ' function Do-Work {}' )
32+ execute ' buffer ' . l: bufinfo . bufnr
33+ setlocal filetype = ps1
34+ call s: assert .equal (&filetype , ' ps1' )
3435
3536 execute ' LanguageClientStart'
36- for l: attempt in range (1 , 30 )
37- if getbufvar (l: bufinfo .name, ' LanguageClient_isServerRunning' ) == 1
38- break
39- endif
40-
41- execute ' sleep' 1
42- endfor
43-
44- call s: assert .equal (getbufvar (l: bufinfo .name, ' LanguageClient_isServerRunning' ), 1 )
45- call s: assert .equal (getbufvar (l: bufinfo .name, ' LanguageClient_projectRoot' ), g: repo_root )
37+ call LanguageClient#textDocument_didOpen ()
38+ call LanguageClient#textDocument_didChange ()
4639
47- let l: expected_diagnostics = {' E ' : 0 , ' W ' : 1 , ' H ' : 0 , ' I ' : 0 }
40+ let l: actual_diagnostics = {}
4841 for l: attempt in range (1 , 30 )
49- if getbufvar (l: bufinfo .name, ' LanguageClient_statusLineDiagnosticsCounts' ) == l: expected_diagnostics
42+ let l: actual_diagnostics = getbufvar (l: bufinfo .bufnr , ' LanguageClient_statusLineDiagnosticsCounts' )
43+ if type (l: actual_diagnostics ) == v: t_dict
5044 break
5145 endif
5246
53- execute ' sleep' 1
47+ execute ' sleep! ' 1
5448 endfor
5549
56- call s: assert .equal (getbufvar (l: bufinfo .name, ' LanguageClient_statusLineDiagnosticsCounts ' ), l: expected_diagnostics )
50+ call s: assert .equal (type (l: actual_diagnostics ), v: t_dict )
5751endfunction
0 commit comments