tombi: support toml_tombi_online flag to control remote schema fetching (#5032)

This commit is contained in:
Ben Boeckel
2025-11-22 07:02:24 -05:00
committed by GitHub
parent de2d3da738
commit 86d8ada5cb
7 changed files with 71 additions and 10 deletions

View File

@@ -1,6 +1,7 @@
Before:
Save g:ale_toml_tombi_executable
Save g:ale_toml_tombi_format_options
Save g:ale_toml_tombi_online
" Use an invalid global executable, so we don't match it.
let g:ale_toml_tombi_executable = 'xxxinvalid'
@@ -14,13 +15,20 @@ After:
call ale#test#RestoreDirectory()
Execute(The tombi format callback should return the correct default values):
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' format'},
\ ale#fixers#tombi_format#Fix(bufnr(''))
Execute(The tombi format callback should include custom options):
let g:ale_toml_tombi_format_options = "--offline"
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' format --offline'},
\ ale#fixers#tombi_format#Fix(bufnr(''))
Execute(The tombi format callback should obey `toml_tombi_online`):
let g:ale_toml_tombi_online = 1
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' lint'},
\ ale#fixers#tombi_lint#Fix(bufnr(''))
Execute(The tombi format callback should include custom options):
let g:ale_toml_tombi_format_options = "--no-cache"
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' format --offline --no-cache'},
\ ale#fixers#tombi_format#Fix(bufnr(''))

View File

@@ -1,6 +1,7 @@
Before:
Save g:ale_toml_tombi_executable
Save g:ale_toml_tombi_lint_options
Save g:ale_toml_tombi_online
" Use an invalid global executable, so we don't match it.
let g:ale_toml_tombi_executable = 'xxxinvalid'
@@ -14,13 +15,20 @@ After:
call ale#test#RestoreDirectory()
Execute(The tombi lint callback should return the correct default values):
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' lint --offline'},
\ ale#fixers#tombi_lint#Fix(bufnr(''))
Execute(The tombi lint callback should obey `toml_tombi_online`):
let g:ale_toml_tombi_online = 1
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' lint'},
\ ale#fixers#tombi_lint#Fix(bufnr(''))
Execute(The tombi lint callback should include custom options):
let g:ale_toml_tombi_lint_options = "--offline"
let g:ale_toml_tombi_lint_options = "--no-cache"
AssertEqual
\ {'command': ale#Escape('xxxinvalid') . ' lint --offline'},
\ {'command': ale#Escape('xxxinvalid') . ' lint --offline --no-cache'},
\ ale#fixers#tombi_lint#Fix(bufnr(''))

View File

@@ -1,10 +1,16 @@
Before:
Save g:ale_toml_tombi_online
call ale#assert#SetUpLinterTest('toml', 'tombi')
After:
call ale#assert#TearDownLinterTest()
Execute(The default executable path should be correct):
AssertLinter 'tombi', ale#Escape('tombi') . ' lsp --offline'
Execute(The default executable path should obey `toml_tombi_online`):
let g:ale_toml_tombi_online = 1
AssertLinter 'tombi', ale#Escape('tombi') . ' lsp'
Execute(The project root should be detected correctly with a configuration file):