test(config): verify Vim/Neovim config payload parity
Expose the init_options payload builders publicly in both clients
(M.init_options/M.server_settings in Lua, nuwiki#lsp#settings() in Vim) so
they can be inspected. Add editor harnesses that dump each client's
server-bound config as deterministic key=value lines and diff against a
shared golden file: nvim == golden and vim == golden together prove the two
clients send identical config. Add a server-side test asserting the Vim flat
shape and the Neovim {nuwiki:{...}} wrapper desugar to the same WikiConfig.
Wire both harnesses into CI.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -91,3 +91,11 @@ function! s:settings() abort
|
||||
endif
|
||||
return l:cfg
|
||||
endfunction
|
||||
|
||||
" Public accessor for the `initialization_options` payload. Mirrors the
|
||||
" Neovim client's `require('nuwiki.lsp').init_options()` so the config
|
||||
" parity harness can inspect the exact dict each client sends to the
|
||||
" server.
|
||||
function! nuwiki#lsp#settings() abort
|
||||
return s:settings()
|
||||
endfunction
|
||||
|
||||
Reference in New Issue
Block a user