summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorw0rp <devw0rp@gmail.com>2023-09-08 01:00:35 +0100
committerw0rp <devw0rp@gmail.com>2023-09-08 01:00:35 +0100
commitbf55175b6971a9a706dfb73ddd00b71750aaee80 (patch)
tree906224bf3752461d25a891dfd0c8261efd4a1480
parente5816964d1ce27c1dcf3497ba80beccd99bc8fd6 (diff)
downloadale-bf55175b6971a9a706dfb73ddd00b71750aaee80.zip
#4454 Clean up root test directory tests
Combine cases into smaller tests of tests and remove tests we no longer need. Linter tests have been moved to where they should be.
-rw-r--r--autoload/ale/debugging.vim1
-rw-r--r--test/handler/test_jq_handler.vader (renamed from test/test_jq_linter.vader)0
-rw-r--r--test/linter/test_css_csslint.vader17
-rw-r--r--test/linter/test_hadolint.vader25
-rw-r--r--test/linter/test_jsonlint.vader31
-rw-r--r--test/linter/test_puppet_languageserver.vader19
-rw-r--r--test/test_ale_has.vader7
-rw-r--r--test/test_ale_info.vader3
-rw-r--r--test/test_ale_info_to_clipboard.vader2
-rw-r--r--test/test_checkingbuffer_autocmd.vader57
-rw-r--r--test/test_code_action_python.vader59
-rw-r--r--test/test_csslint_config_detection.vader29
-rw-r--r--test/test_deferred_command_string.vader4
-rw-r--r--test/test_deferred_executable_string.vader2
-rw-r--r--test/test_disabling_ale.vader44
-rw-r--r--test/test_dockerfile_hadolint_linter.vader106
-rw-r--r--test/test_filetype_guessing.vader (renamed from test/test_filetype_mapping.vader)9
-rw-r--r--test/test_jsonlint_executable_detection.vader45
-rw-r--r--test/test_list_opening.vader8
-rw-r--r--test/test_nimlsp_project_root.vader19
-rw-r--r--test/test_organize_imports.vader2
-rw-r--r--test/test_parse_command_args.vader41
-rw-r--r--test/test_puppet_path_detection.vader22
-rw-r--r--test/test_python_find_project_root.vader11
-rw-r--r--test/test_rename.vader12
-rw-r--r--test/test_semver_utils.vader4
-rw-r--r--test/test_statusline.vader19
-rw-r--r--test/test_tmpdir_wrapper.vader2
-rw-r--r--test/test_virtualtext.vader17
-rw-r--r--test/test_wrap_comand.vader7
30 files changed, 132 insertions, 492 deletions
diff --git a/autoload/ale/debugging.vim b/autoload/ale/debugging.vim
index 8b2a386f..1becf332 100644
--- a/autoload/ale/debugging.vim
+++ b/autoload/ale/debugging.vim
@@ -56,7 +56,6 @@ let s:global_variable_list = [
\ 'ale_sign_style_warning',
\ 'ale_sign_warning',
\ 'ale_sign_highlight_linenrs',
-\ 'ale_statusline_format',
\ 'ale_type_map',
\ 'ale_use_neovim_diagnostics_api',
\ 'ale_use_global_executables',
diff --git a/test/test_jq_linter.vader b/test/handler/test_jq_handler.vader
index cbe23b96..cbe23b96 100644
--- a/test/test_jq_linter.vader
+++ b/test/handler/test_jq_handler.vader
diff --git a/test/linter/test_css_csslint.vader b/test/linter/test_css_csslint.vader
new file mode 100644
index 00000000..7bba5bb1
--- /dev/null
+++ b/test/linter/test_css_csslint.vader
@@ -0,0 +1,17 @@
+Before:
+ call ale#assert#SetUpLinterTest('css', 'csslint')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(--config should be set when the .csslintrc file is found):
+ call ale#test#SetFilename('../test-files/csslint/some-app/subdir/testfile.js')
+
+ AssertLinter 'csslint', 'csslint --format=compact '
+ \ . '--config=' . ale#Escape(ale#path#Simplify(g:dir . '/../test-files/csslint/some-app/.csslintrc'))
+ \ . ' %t'
+
+Execute(--config should not be used when no .csslintrc file exists):
+ call ale#test#SetFilename('../test-files/csslint/other-app/testfile.css')
+
+ AssertLinter 'csslint', 'csslint --format=compact %t'
diff --git a/test/linter/test_hadolint.vader b/test/linter/test_hadolint.vader
new file mode 100644
index 00000000..da335400
--- /dev/null
+++ b/test/linter/test_hadolint.vader
@@ -0,0 +1,25 @@
+Before:
+ call ale#assert#SetUpLinterTest('dockerfile', 'hadolint')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(We should not use Docker by default):
+ AssertLinter 'hadolint', 'hadolint --no-color -'
+
+Execute(Options should be passed correctly when docker is disabled):
+ let b:ale_dockerfile_hadolint_options = '--ignore DL3006'
+
+ AssertLinter 'hadolint', 'hadolint --ignore DL3006 --no-color -'
+
+Execute(The command should be correct when using Docker):
+ let b:ale_dockerfile_hadolint_use_docker = 'always'
+
+ AssertLinter 'docker', 'docker run --rm -i hadolint/hadolint hadolint --no-color -'
+
+Execute(The command should be correct when using docker and supplying options):
+ let b:ale_dockerfile_hadolint_use_docker = 'always'
+ let b:ale_dockerfile_hadolint_options = '--ignore DL3006'
+
+ AssertLinter 'docker',
+ \ 'docker run --rm -i hadolint/hadolint hadolint --ignore DL3006 --no-color -'
diff --git a/test/linter/test_jsonlint.vader b/test/linter/test_jsonlint.vader
new file mode 100644
index 00000000..52bbe248
--- /dev/null
+++ b/test/linter/test_jsonlint.vader
@@ -0,0 +1,31 @@
+Before:
+ call ale#assert#SetUpLinterTest('json', 'jsonlint')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(local executable should be detected correctly):
+ call ale#test#SetFilename('../test-files/jsonlint/app/src/app.json')
+
+ AssertEqual
+ \ ale#path#Simplify(g:dir . '/../test-files/jsonlint/app/node_modules/.bin/jsonlint'),
+ \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
+ \
+Execute(use_global should override project executable):
+ let g:ale_json_jsonlint_use_global = 1
+
+ call ale#test#SetFilename('../test-files/jsonlint/app/src/app.json')
+
+ AssertEqual
+ \ 'jsonlint',
+ \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
+ \
+Execute(manually defined should override default executable):
+ let g:ale_json_jsonlint_use_global = 1
+ let g:ale_json_jsonlint_executable = 'custom_jsonlint'
+
+ call ale#test#SetFilename('../test-files/jsonlint/app/src/app.json')
+
+ AssertEqual
+ \ 'custom_jsonlint',
+ \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
diff --git a/test/linter/test_puppet_languageserver.vader b/test/linter/test_puppet_languageserver.vader
new file mode 100644
index 00000000..3fb458ab
--- /dev/null
+++ b/test/linter/test_puppet_languageserver.vader
@@ -0,0 +1,19 @@
+Before:
+ call ale#assert#SetUpLinterTest('puppet', 'languageserver')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(old-style module should find its root correctly):
+ call ale#test#SetFilename('../test-files/puppet/old-style-module/manifests/init.pp')
+
+ AssertEqual
+ \ ale#path#Simplify(g:dir . '/../test-files/puppet/old-style-module'),
+ \ ale_linters#puppet#languageserver#GetProjectRoot(bufnr(''))
+ \
+Execute(new-style module should find its root correctly):
+ call ale#test#SetFilename('../test-files/puppet/new-style-module/lib/puppet/types/exampletype.rb')
+
+ AssertEqual
+ \ ale#path#Simplify(g:dir . '/../test-files/puppet/new-style-module'),
+ \ ale_linters#puppet#languageserver#GetProjectRoot(bufnr(''))
diff --git a/test/test_ale_has.vader b/test/test_ale_has.vader
index a4abe213..e7fbe2fb 100644
--- a/test/test_ale_has.vader
+++ b/test/test_ale_has.vader
@@ -1,12 +1,5 @@
Execute(Checks for versions below the current version should succeed):
AssertEqual 1, ale#Has('ale-3.3.0')
- AssertEqual 1, ale#Has('ale-3.2.0')
- AssertEqual 1, ale#Has('ale-3.1.0')
- AssertEqual 1, ale#Has('ale-3.0.0')
- AssertEqual 1, ale#Has('ale-2.7.0')
- AssertEqual 1, ale#Has('ale-2.6.0')
- AssertEqual 1, ale#Has('ale-2.5.0')
- AssertEqual 1, ale#Has('ale-2.4.0')
AssertEqual 1, ale#Has('ALE-2.2.1')
AssertEqual 1, ale#Has('ALE-1.0.0')
diff --git a/test/test_ale_info.vader b/test/test_ale_info.vader
index 7b9e189e..5f5936d6 100644
--- a/test/test_ale_info.vader
+++ b/test/test_ale_info.vader
@@ -51,7 +51,6 @@ Before:
Save g:ale_sign_style_warning
Save g:ale_sign_warning
Save g:ale_sign_highlight_linenrs
- Save g:ale_statusline_format
Save g:ale_type_map
Save g:ale_use_neovim_diagnostics_api
Save g:ale_use_global_executables
@@ -112,7 +111,6 @@ Before:
let g:ale_sign_style_warning = '--'
let g:ale_sign_warning = '--'
let g:ale_sign_highlight_linenrs = 0
- let g:ale_statusline_format = ['%d error(s)', '%d warning(s)', 'OK']
let g:ale_type_map = {}
let g:ale_use_neovim_diagnostics_api = 0
let g:ale_use_global_executables = v:null
@@ -189,7 +187,6 @@ Before:
\ 'let g:ale_sign_style_warning = ''--''',
\ 'let g:ale_sign_warning = ''--''',
\ 'let g:ale_sign_highlight_linenrs = 0',
- \ 'let g:ale_statusline_format = [''%d error(s)'', ''%d warning(s)'', ''OK'']',
\ 'let g:ale_type_map = {}',
\ 'let g:ale_use_neovim_diagnostics_api = 0',
\ 'let g:ale_use_global_executables = v:null',
diff --git a/test/test_ale_info_to_clipboard.vader b/test/test_ale_info_to_clipboard.vader
index 9881f367..d0131da1 100644
--- a/test/test_ale_info_to_clipboard.vader
+++ b/test/test_ale_info_to_clipboard.vader
@@ -1,7 +1,7 @@
After:
unlet! g:output
-Execute(ALEInfo -clipboard should that clipboard support is required):
+Execute(ALEInfo -clipboard should tell the user that clipboard support is required):
" When run in the Docker image, there's no clipboard support, so this test
" will actually run.
if !has('clipboard')
diff --git a/test/test_checkingbuffer_autocmd.vader b/test/test_checkingbuffer_autocmd.vader
deleted file mode 100644
index 9e642b15..00000000
--- a/test/test_checkingbuffer_autocmd.vader
+++ /dev/null
@@ -1,57 +0,0 @@
-Before:
- Save g:ale_run_synchronously
- Save g:ale_buffer_info
-
- let g:ale_run_synchronously = 1
- let g:ale_buffer_info = {}
-
- let g:checking_buffer = 0
-
- unlet! b:ale_linted
-
- function! TestCallback(buffer, output)
- return []
- endfunction
-
- call ale#linter#PreventLoading('testft')
- call ale#linter#Define('testft', {
- \ 'name': 'testlinter',
- \ 'callback': 'TestCallback',
- \ 'executable': has('win32') ? 'cmd' : 'true',
- \ 'command': 'true',
- \})
-
-After:
- Restore
-
- unlet! g:checking_buffer
-
- delfunction TestCallback
- call ale#linter#Reset()
-
- augroup VaderTest
- autocmd!
- augroup END
-
- augroup! VaderTest
-
-Given testft (An empty file):
-Execute(ALELintPre should not return success on ale#engine#IsCheckingBuffer):
- augroup VaderTest
- autocmd!
- autocmd User ALELintPre let g:checking_buffer = ale#engine#IsCheckingBuffer(bufnr('')) ? 1 : 0
- augroup END
-
- ALELint
-
- AssertEqual g:checking_buffer, 0
-
-Execute(ALEJobStarted should return success on ale#engine#IsCheckingBuffer):
- augroup VaderTest
- autocmd!
- autocmd User ALEJobStarted let g:checking_buffer = ale#engine#IsCheckingBuffer(bufnr('')) ? 1 : 0
- augroup END
-
- ALELint
-
- AssertEqual g:checking_buffer, 1
diff --git a/test/test_code_action_python.vader b/test/test_code_action_python.vader
deleted file mode 100644
index 3c784816..00000000
--- a/test/test_code_action_python.vader
+++ /dev/null
@@ -1,59 +0,0 @@
-Given python(An example Python file):
- def main():
- a = 1
- c = a + 1
-
-Execute():
- let g:changes = [
- \ {'end': {'offset': 7, 'line': 1}, 'newText': 'func_qtffgsv', 'start': {'offset': 5, 'line': 1}},
- \ {'end': {'offset': 9, 'line': 1}, 'newText': '', 'start': {'offset': 8, 'line': 1}},
- \ {'end': {'offset': 15, 'line': 3}, 'newText': " return c\n\n\ndef main():\n c = func_qtffgsvi()\n", 'start': {'offset': 15, 'line': 3}}
- \]
-
- call ale#code_action#ApplyChanges(expand('%:p'), g:changes, {})
-
-Expect(The changes should be applied correctly):
- def func_qtffgsvi():
- a = 1
- c = a + 1
- return c
-
-
- def main():
- c = func_qtffgsvi()
-
-
-Given python(Second python example):
- import sys
- import exifread
-
- def main():
- with open(sys.argv[1], 'rb') as f:
- exif = exifread.process_file(f)
- dt = str(exif['Image DateTime'])
- date = dt[:10].replace(':', '-')
-
-Execute():
- let g:changes = [
- \ {'end': {'offset': 16, 'line': 2}, 'newText': "\n\n\ndef func_ivlpdpao(f):\n exif = exifread.process_file(f)\n dt = str(exif['Image DateTime'])\n date = dt[:10].replace(':', '-')\n return date\n", 'start': {'offset': 16, 'line': 2}},
- \ {'end': {'offset': 32, 'line': 6}, 'newText': 'date = func', 'start': {'offset': 9, 'line': 6}},
- \ {'end': {'offset': 42, 'line': 8}, 'newText': "ivlpdpao(f)\n", 'start': {'offset': 33, 'line': 6}}
- \]
-
- call ale#code_action#ApplyChanges(expand('%:p'), g:changes, {})
-
-Expect(The changes should be applied correctly):
- import sys
- import exifread
-
-
- def func_ivlpdpao(f):
- exif = exifread.process_file(f)
- dt = str(exif['Image DateTime'])
- date = dt[:10].replace(':', '-')
- return date
-
-
- def main():
- with open(sys.argv[1], 'rb') as f:
- date = func_ivlpdpao(f)
diff --git a/test/test_csslint_config_detection.vader b/test/test_csslint_config_detection.vader
deleted file mode 100644
index c8e5fa98..00000000
--- a/test/test_csslint_config_detection.vader
+++ /dev/null
@@ -1,29 +0,0 @@
-Before:
- call ale#test#SetDirectory('/testplugin/test')
-
- runtime ale_linters/css/csslint.vim
-
-After:
- call ale#test#RestoreDirectory()
- call ale#linter#Reset()
-
-Execute(--config should be set when the .csslintrc file is found):
- call ale#test#SetFilename('test-files/csslint/some-app/subdir/testfile.js')
-
- AssertEqual
- \ (
- \ 'csslint --format=compact '
- \ . '--config=' . ale#Escape(ale#path#Simplify(g:dir . '/test-files/csslint/some-app/.csslintrc'))
- \ . ' %t'
- \ ),
- \ ale_linters#css#csslint#GetCommand(bufnr(''))
-
-Execute(--config should not be used when no .csslintrc file exists):
- call ale#test#SetFilename('test-files/csslint/other-app/testfile.css')
-
- AssertEqual
- \ (
- \ 'csslint --format=compact '
- \ . ' %t'
- \ ),
- \ ale_linters#css#csslint#GetCommand(bufnr(''))
diff --git a/test/test_deferred_command_string.vader b/test/test_deferred_command_string.vader
index 173b6bb2..b34338a2 100644
--- a/test/test_deferred_command_string.vader
+++ b/test/test_deferred_command_string.vader
@@ -27,7 +27,7 @@ After:
unlet! g:ale_run_synchronously_callbacks
Given foobar (Some imaginary filetype):
-Execute(It should be possible to compute an executable to check based on the result of commands):
+Execute(It should be possible to compute a command based on the result of other commands):
AssertLinter has('win32') ? 'cmd' : 'echo', 'foo'
ALELint
@@ -37,7 +37,7 @@ Execute(It should be possible to compute an executable to check based on the res
\ 1,
\ len(filter(copy(b:ale_history), 'string(v:val.command) =~# ''foo'''))
-Execute(It handle the deferred command failing):
+Execute(We should handle the deferered command failing):
let g:ale_emulate_job_failure = 1
AssertLinter has('win32') ? 'cmd' : 'echo', 0
diff --git a/test/test_deferred_executable_string.vader b/test/test_deferred_executable_string.vader
index 3bdc5251..7a7bb6c1 100644
--- a/test/test_deferred_executable_string.vader
+++ b/test/test_deferred_executable_string.vader
@@ -33,7 +33,7 @@ Execute(It should be possible to compute an executable to check based on the res
\ [{'status': 0, 'job_id': 'executable', 'command': 'foo'}],
\ filter(copy(b:ale_history), 'v:val.job_id is# ''executable''')
-Execute(It handle the deferred command failing):
+Execute(We should handle the deferered executable command failing):
let g:ale_emulate_job_failure = 1
AssertLinter 0, 'echo'
diff --git a/test/test_disabling_ale.vader b/test/test_disabling_ale.vader
index 6159f793..660e4aa2 100644
--- a/test/test_disabling_ale.vader
+++ b/test/test_disabling_ale.vader
@@ -39,7 +39,8 @@ Before:
silent mess
redir END
- let l:lines = split(l:output, "\n")
+ " Filter out messages that could come from saving this test file.
+ let l:lines = filter(split(l:output, "\n"), 'v:val !~ ''written\|No line''')
return empty(l:lines) ? '' : l:lines[-1]
endfunction
@@ -65,14 +66,9 @@ Execute(Linting shouldn't happen when ALE is disabled globally):
call ale#Queue(0)
AssertEqual {}, g:ale_buffer_info
-
-Execute(Linting shouldn't happen when the file is too large with a global options):
- let g:ale_maximum_file_size = 12
- let g:ale_buffer_info = {}
-
- call ale#Queue(0)
-
- AssertEqual {}, g:ale_buffer_info
+ call SetUpCursorData()
+ call ale#cursor#EchoCursorWarning()
+ AssertEqual '', GetLastMessage()
Execute(Linting shouldn't happen when ALE is disabled locally):
let b:ale_enabled = 0
@@ -81,39 +77,29 @@ Execute(Linting shouldn't happen when ALE is disabled locally):
call ale#Queue(0)
AssertEqual {}, g:ale_buffer_info
-
-Execute(Linting shouldn't happen when the file is too large with a local options):
- let b:ale_maximum_file_size = 12
- let g:ale_buffer_info = {}
-
- call ale#Queue(0)
-
- AssertEqual {}, g:ale_buffer_info
-
-Execute(Cursor warnings shouldn't be echoed when ALE is disabled globally):
- let g:ale_enabled = 0
-
call SetUpCursorData()
call ale#cursor#EchoCursorWarning()
AssertEqual '', GetLastMessage()
-Execute(Cursor warnings shouldn't be echoed when the file is too large with global options):
+Execute(Linting shouldn't happen when the file is too large with global options):
let g:ale_maximum_file_size = 12
+ let g:ale_buffer_info = {}
- call SetUpCursorData()
- call ale#cursor#EchoCursorWarning()
- AssertEqual '', GetLastMessage()
-
-Execute(Cursor warnings shouldn't be echoed when ALE is disabled locally):
- let b:ale_enabled = 0
+ call ale#Queue(0)
+ AssertEqual {}, g:ale_buffer_info
+ " We shouldn't show cursor warnings.
call SetUpCursorData()
call ale#cursor#EchoCursorWarning()
AssertEqual '', GetLastMessage()
-Execute(Cursor warnings shouldn't be echoed when the file is too large with local options):
+Execute(Linting shouldn't happen when the file is too large with local options):
let b:ale_maximum_file_size = 12
+ let g:ale_buffer_info = {}
+
+ call ale#Queue(0)
+ AssertEqual {}, g:ale_buffer_info
call SetUpCursorData()
call ale#cursor#EchoCursorWarning()
AssertEqual '', GetLastMessage()
diff --git a/test/test_dockerfile_hadolint_linter.vader b/test/test_dockerfile_hadolint_linter.vader
deleted file mode 100644
index ba7e2187..00000000
--- a/test/test_dockerfile_hadolint_linter.vader
+++ /dev/null
@@ -1,106 +0,0 @@
-" NOTE: We use the 'b:' forms below to ensure that we're properly using
-" ale#Var()
-
-Given dockerfile:
- #
-
-Before:
- Save g:ale_dockerfile_hadolint_use_docker
- Save g:ale_dockerfile_hadolint_docker_image
- silent! unlet g:ale_dockerfile_hadolint_use_docker
- silent! unlet g:ale_dockerfile_hadolint_docker_image
-
- " enable loading inside test container
- silent! cd /testplugin
- source ale_linters/dockerfile/hadolint.vim
-
-
-After:
- Restore
- silent! unlet b:ale_dockerfile_hadolint_use_docker
- silent! unlet b:ale_dockerfile_hadolint_docker_image
- silent! unlet b:ale_dockerfile_hadolint_options
-
-
-Execute(linter honors ..._use_docker correctly):
-
- " default: never
- AssertEqual
- \ 'hadolint',
- \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
-
- " explicit never
- let b:ale_dockerfile_hadolint_use_docker = 'never'
- AssertEqual
- \ 'hadolint',
- \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
-
- let b:ale_dockerfile_hadolint_use_docker = 'always'
- AssertEqual
- \ 'docker',
- \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
-
- " hadolint if present, otherwise docker
- let command = 'docker'
- if executable('hadolint')
- let command = 'hadolint'
- endif
-
- let b:ale_dockerfile_hadolint_use_docker = 'yes'
- AssertEqual
- \ command,
- \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
-
-
-Execute(command is correct when using docker):
- let b:ale_dockerfile_hadolint_use_docker = 'always'
-
- AssertEqual
- \ "docker run --rm -i hadolint/hadolint hadolint --no-color -",
- \ ale_linters#dockerfile#hadolint#GetCommand(bufnr(''))
-
-Execute(command is correct when using docker and supplying options):
- let b:ale_dockerfile_hadolint_use_docker = 'always'
- let b:ale_dockerfile_hadolint_options = '--ignore DL3006'
-
- AssertEqual
- \ "docker run --rm -i hadolint/hadolint hadolint --ignore DL3006 --no-color -",
- \ ale_linters#dockerfile#hadolint#GetCommand(bufnr(''))
-
-Execute(command is correct when not docker):
- let b:ale_dockerfile_hadolint_use_docker = 'never'
-
- AssertEqual
- \ "hadolint --no-color -",
- \ ale_linters#dockerfile#hadolint#GetCommand(bufnr(''))
-
-Execute(command is correct when not docker and supplying options):
- let b:ale_dockerfile_hadolint_use_docker = 'never'
- let b:ale_dockerfile_hadolint_options = '--ignore DL3006'
-
- AssertEqual
- \ "hadolint --ignore DL3006 --no-color -",
- \ ale_linters#dockerfile#hadolint#GetCommand(bufnr(''))
-
-Execute(test warnings from hadolint):
- AssertEqual
- \ [{'lnum': 10, 'col': 0, 'type': 'W', 'code': 'DL3007', 'text': 'DL3007: Using latest is prone to errors', 'detail': "DL3007 ( https://github.com/hadolint/hadolint/wiki/DL3007 )\n\nUsing latest is prone to errors"}],
- \ ale_linters#dockerfile#hadolint#Handle(bufnr(''), [
- \ '-:10 DL3007 warning: Using latest is prone to errors',
- \ ])
-
-Execute(test warnings from shellcheck):
- AssertEqual
- \ [{'lnum': 3, 'col': 0, 'type': 'W', 'code': 'SC2154', 'text': 'SC2154: bar is referenced but not assigned.', 'detail': "SC2154 ( https://github.com/koalaman/shellcheck/wiki/SC2154 )\n\nbar is referenced but not assigned."}],
- \ ale_linters#dockerfile#hadolint#Handle(bufnr(''), [
- \ '-:3 SC2154 warning: bar is referenced but not assigned.',
- \ ])
-
-Execute(test errors from dockerfile parser):
- AssertEqual
- \ [{'lnum': 3, 'col': 4, 'type': 'E', 'text': 'unexpected "A" expecting at least one space after ''RUN''', 'detail': 'hadolint could not parse the file because of a syntax error.'}],
- \ ale_linters#dockerfile#hadolint#Handle(bufnr(''), [
- \ "/dev/stdin:3:4 unexpected \"A\" expecting at least one space after 'RUN'",
- \ ])
-
-" fin...
diff --git a/test/test_filetype_mapping.vader b/test/test_filetype_guessing.vader
index 2d72491d..fa543129 100644
--- a/test/test_filetype_mapping.vader
+++ b/test/test_filetype_guessing.vader
@@ -8,20 +8,11 @@ Before:
augroup END
After:
- unlet! g:map
augroup TestFiletypeGroup
autocmd!
augroup END
augroup! TestFiletypeGroup
-Execute(ALE should parse autocmd filetypes correctly):
- let g:map = ale#filetypes#LoadExtensionMap()
-
- AssertEqual '.x', g:map['xfiletype']
- AssertEqual '.y', g:map['yfiletype']
- AssertEqual '.z', g:map['zfiletype']
- AssertEqual '.jsx', g:map['javascript.jsx']
-
Execute(ALE should guess file extensions appropriately):
" The whole string should be used, if there's a match.
AssertEqual '.jsx', ale#filetypes#GuessExtension('javascript.jsx')
diff --git a/test/test_jsonlint_executable_detection.vader b/test/test_jsonlint_executable_detection.vader
deleted file mode 100644
index 60bc6d75..00000000
--- a/test/test_jsonlint_executable_detection.vader
+++ /dev/null
@@ -1,45 +0,0 @@
-Before:
- call ale#test#SetDirectory('/testplugin/test')
-
- runtime ale_linters/json/jsonlint.vim
-
-After:
- let g:ale_json_jsonlint_executable = 'jsonlint'
- let g:ale_json_jsonlint_use_global = 0
-
- call ale#test#RestoreDirectory()
- call ale#linter#Reset()
-
-Execute(local executable should be detected correctly):
- call ale#test#SetFilename('test-files/jsonlint/app/src/app.json')
-
- AssertEqual
- \ ale#path#Simplify(g:dir . '/test-files/jsonlint/app/node_modules/.bin/jsonlint'),
- \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
-
-Execute(recursively executable should be detected correctly):
- call ale#test#SetFilename('test-files/jsonlint/app-without-jsonlint/src/app.json')
-
- AssertEqual
- \ ale#path#Simplify(g:dir . '/test-files/jsonlint/node_modules/jsonlint/lib/cli.js'),
- \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
-
-Execute(use_global should override project executable):
- let g:ale_json_jsonlint_use_global = 1
-
- call ale#test#SetFilename('test-files/jsonlint/app/src/app.json')
-
- AssertEqual
- \ 'jsonlint',
- \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
-
-Execute(manually defined should override default executable):
- let g:ale_json_jsonlint_use_global = 1
- let g:ale_json_jsonlint_executable = 'custom_jsonlint'
-
- call ale#test#SetFilename('test-files/jsonlint/app/src/app.json')
-
- AssertEqual
- \ 'custom_jsonlint',
- \ ale_linters#json#jsonlint#GetExecutable(bufnr(''))
-
diff --git a/test/test_list_opening.vader b/test/test_list_opening.vader
index 44004182..e6e33cda 100644
--- a/test/test_list_opening.vader
+++ b/test/test_list_opening.vader
@@ -246,13 +246,7 @@ Execute(The quickfix window should be horizontal for the quickfix with appropria
AssertEqual 0, GetQuickfixIsVertical(8)
-Execute(The buffer ale_open_list option should be respected):
- let b:ale_open_list = 1
-
- call ale#list#SetLists(bufnr('%'), g:loclist)
- Assert ale#list#IsQuickfixOpen()
-
-Execute(The buffer ale_keep_list_window_open option should be respected):
+Execute(buffer-local options should be respected):
let b:ale_open_list = 1
let b:ale_keep_list_window_open = 1
diff --git a/test/test_nimlsp_project_root.vader b/test/test_nimlsp_project_root.vader
deleted file mode 100644
index d10989b3..00000000
--- a/test/test_nimlsp_project_root.vader
+++ /dev/null
@@ -1,19 +0,0 @@
-Before:
- runtime ale_linters/nim/nimlsp.vim
- call ale#test#SetDirectory('/testplugin/test')
-
-After:
- if isdirectory(g:dir . '/.git')
- call delete(g:dir . '/.git', 'd')
- endif
-
- call ale#test#RestoreDirectory()
- call ale#linter#Reset()
-
-
-Execute(Detect root of nim project with .git/ correctly):
- call ale#test#SetFilename('test-files/nim/with-git/src/source.nim')
- call mkdir(g:dir . '/.git')
- AssertEqual
- \ ale#path#Simplify(g:dir),
- \ ale_linters#nim#nimlsp#GetProjectRoot(bufnr(''))
diff --git a/test/test_organize_imports.vader b/test/test_organize_imports.vader
index 720e8950..87a7b7c1 100644
--- a/test/test_organize_imports.vader
+++ b/test/test_organize_imports.vader
@@ -154,7 +154,7 @@ Given python(Some Python file):
somelongerline
bazxyzxyzxyz
-Execute(Should result in error message):
+Execute(Should result in error message for LSP):
call ale#linter#Reset()
runtime ale_linters/python/pylsp.vim
let b:ale_linters = ['pylsp']
diff --git a/test/test_parse_command_args.vader b/test/test_parse_command_args.vader
index 0103b967..6a647610 100644
--- a/test/test_parse_command_args.vader
+++ b/test/test_parse_command_args.vader
@@ -5,48 +5,27 @@ After:
delcommand ParseTest
endif
-Execute(ale#args#Parse should handle empty input):
- AssertEqual
- \ [{}, ''],
- \ ale#args#Parse([], '')
- AssertEqual
- \ [{}, ''],
- \ ale#args#Parse(['foo', 'bar'], '')
-
-Execute(ale#args#Parse should parse commands correctly):
- AssertEqual
- \ [{'foo': '', 'bar': ''}, 'leave these alone'],
- \ ale#args#Parse(['foo', 'bar'], '-foo -bar leave these alone')
- AssertEqual
- \ [{'foo': ''}, 'leave these alone'],
- \ ale#args#Parse(['foo', 'bar'], '-foo leave these alone')
-
-Execute(ale#args#Parse should raise errors for unknown arguments):
- AssertThrows call ale#args#Parse(['foo', 'bar'], '-nope leave these alone')
- AssertEqual 'Invalid argument: -nope', g:vader_exception
-
-Execute(ale#args#Parse should stop parsing arguments after --):
- AssertEqual
- \ [{'foo': ''}, ' --nope leave these alone'],
- \ ale#args#Parse(['foo', 'bar'], '-foo -- --nope leave these alone')
- AssertEqual
- \ [{}, '--'],
- \ ale#args#Parse(['foo', 'bar'], '-- --')
- AssertEqual
- \ [{}, ''],
- \ ale#args#Parse(['foo', 'bar'], '--')
-
Execute(ale#args#Parse should work for an example command):
command! -nargs=* ParseTest let b:parse_result = ale#args#Parse(['foo', 'bar'], <q-args>)
ParseTest
AssertEqual [{}, ''], b:parse_result
+ ParseTest --
+ AssertEqual [{}, ''], b:parse_result
+
ParseTest -foo
AssertEqual [{'foo': ''}, ''], b:parse_result
+ ParseTest -foo -- --
+ AssertEqual [{'foo': ''}, '--'], b:parse_result
+
ParseTest -foo -bar
AssertEqual [{'foo': '', 'bar': ''}, ''], b:parse_result
ParseTest -foo -bar leave these alone
AssertEqual [{'foo': '', 'bar': ''}, 'leave these alone'], b:parse_result
+
+Execute(ale#args#Parse should raise errors for unknown arguments):
+ AssertThrows call ale#args#Parse(['foo', 'bar'], '-nope leave these alone')
+ AssertEqual 'Invalid argument: -nope', g:vader_exception
diff --git a/test/test_puppet_path_detection.vader b/test/test_puppet_path_detection.vader
deleted file mode 100644
index e918e916..00000000
--- a/test/test_puppet_path_detection.vader
+++ /dev/null
@@ -1,22 +0,0 @@
-Before:
- call ale#test#SetDirectory('/testplugin/test')
-
- runtime ale_linters/puppet/languageserver.vim
-
-After:
- call ale#test#RestoreDirectory()
- call ale#linter#Reset()
-
-Execute(old-style module should find its root correctly):
- call ale#test#SetFilename('test-files/puppet/old-style-module/manifests/init.pp')
-
- AssertEqual
- \ ale#path#Simplify(g:dir . '/test-files/puppet/old-style-module'),
- \ ale_linters#puppet#languageserver#GetProjectRoot(bufnr(''))
-
-Execute(new-style module should find its root correctly):
- call ale#test#SetFilename('test-files/puppet/new-style-module/lib/puppet/types/exampletype.rb')
-
- AssertEqual
- \ ale#path#Simplify(g:dir . '/test-files/puppet/new-style-module'),
- \ ale_linters#puppet#languageserver#GetProjectRoot(bufnr(''))
diff --git a/test/test_python_find_project_root.vader b/test/test_python_find_project_root.vader
deleted file mode 100644
index e323c866..00000000
--- a/test/test_python_find_project_root.vader
+++ /dev/null
@@ -1,11 +0,0 @@
-Before:
- call ale#test#SetDirectory('/testplugin/test')
-
-After:
- call ale#test#RestoreDirectory()
-
-Execute(Detect root of Python project with .flake8 correctly):
- call ale#test#SetFilename('test-files/python/python-package-project/package-name/module.py')
- AssertEqual
- \ ale#path#Simplify(g:dir . '/test-files/python/python-package-project'),
- \ ale#python#FindProjectRoot(bufnr(''))
diff --git a/test/test_rename.vader b/test/test_rename.vader
index d58d1827..a4d7e1b3 100644
--- a/test/test_rename.vader
+++ b/test/test_rename.vader
@@ -201,16 +201,6 @@ Execute(Code actions from tsserver should be handled):
\ ],
\ g:code_actions
-Execute(HandleTSServerResponse does nothing when no data in rename_map):
- call ale#rename#HandleTSServerResponse(1, {
- \ 'command': 'rename',
- \ 'request_seq': -9,
- \ 'success': v:true,
- \ 'body': {}
- \})
-
- AssertEqual g:handle_code_action_called, 0
-
Execute(Prints a tsserver error message when unsuccessful):
call ale#rename#HandleTSServerResponse(1, {
\ 'command': 'rename',
@@ -223,7 +213,7 @@ Execute(Prints a tsserver error message when unsuccessful):
AssertEqual ['echom ''Error renaming "oldName" to: "aNewName". ' .
\ 'Reason: This symbol cannot be renamed'''], g:expr_list
-Execute(Does nothing when no changes):
+Execute(HandleTSServerResponse does nothing when no changes):
call ale#rename#HandleTSServerResponse(1, {
\ 'command': 'rename',
\ 'request_seq': 3,
diff --git a/test/test_semver_utils.vader b/test/test_semver_utils.vader
index b38feb06..c1ed30aa 100644
--- a/test/test_semver_utils.vader
+++ b/test/test_semver_utils.vader
@@ -8,7 +8,7 @@ Execute(ParseVersion should return the version from the lines of output):
\ '1.2.3',
\])
-Execute(ParseVersion should return an empty list when no vesrion can be found):
+Execute(ParseVersion should return an empty list when no version can be found):
AssertEqual [], ale#semver#ParseVersion(['x'])
AssertEqual [], ale#semver#ParseVersion([])
@@ -17,8 +17,6 @@ Execute(ParseVersion should tolerate missing patch numbers):
AssertEqual [3, 4, 0], ale#semver#ParseVersion(['Version 3.4'])
Execute(GTE should compare triples correctly):
- Assert ale#semver#GTE([3, 0, 4], [3, 0, 0])
- Assert ale#semver#GTE([3, 0, 0], [3, 0, 0])
Assert ale#semver#GTE([3, 0, 0], [2, 0, 0])
Assert ale#semver#GTE([3, 1, 0], [3, 1, 0])
Assert ale#semver#GTE([3, 2, 0], [3, 1, 0])
diff --git a/test/test_statusline.vader b/test/test_statusline.vader
index f76cbfa9..4deb9f66 100644
--- a/test/test_statusline.vader
+++ b/test/test_statusline.vader
@@ -1,5 +1,4 @@
Before:
- Save g:ale_statusline_format
Save g:ale_buffer_info
let g:ale_buffer_info = {}
@@ -82,8 +81,8 @@ Execute (Count should read data from the cache):
AssertEqual Counts({'error': 1, 'warning': 2}), ale#statusline#Count(44)
Execute (FirstProblem should read data from the cache):
- let g:ale_buffer_info =
- \{"44":
+ let g:ale_buffer_info =
+ \{"44":
\{'count': 0,
\'first_problems':
\{'error': {'lnum': 3},
@@ -91,7 +90,7 @@ Execute (FirstProblem should read data from the cache):
\'style_error': {'lnum': 22},
\'style_warning': {'lnum': 223},
\'info': {'lnum': 2}
- \}
+ \}
\}
\}
AssertEqual {'lnum': 3}, ale#statusline#FirstProblem(44, 'error')
@@ -143,15 +142,3 @@ Execute (Output should be empty for non-existent buffer):
AssertEqual {}, ale#statusline#FirstProblem(9001, 'style_error')
AssertEqual {}, ale#statusline#FirstProblem(9001, 'style_warning')
AssertEqual {}, ale#statusline#FirstProblem(9001, 'info')
-
-Execute(ale#statusline#Update shouldn't blow up when globals are undefined):
- unlet! g:ale_statusline_format
- call ale#statusline#Update(1, [])
-
-Execute(ale#statusline#Count should return 0 counts when globals are undefined):
- unlet! g:ale_statusline_format
- AssertEqual Counts({}), ale#statusline#Count(1)
-
-Execute(FirstProblem should return an empty dict when globals are undefined):
- unlet! g:ale_statusline_format
- AssertEqual {}, ale#statusline#FirstProblem(bufnr(''), 'info')
diff --git a/test/test_tmpdir_wrapper.vader b/test/test_tmpdir_wrapper.vader
index 151b8943..906f8b7d 100644
--- a/test/test_tmpdir_wrapper.vader
+++ b/test/test_tmpdir_wrapper.vader
@@ -19,7 +19,7 @@ Execute(ale#util#Tempname shouldn't set $TMPDIR to an empty string if it isn't s
Assert !exists('$TMPDIR'), '$TMPDIR exists where it shouldn''t'
endif
-Execute(ale#util#Tempname shouldn't replace $TMPDIR and reset them to an empty string.):
+Execute(ale#util#Tempname shouldn't replace $TMPDIR and reset them to an empty string):
if has('unix')
let $TMPDIR = ''
Assert ale#util#Tempname() =~# '^/tmp'
diff --git a/test/test_virtualtext.vader b/test/test_virtualtext.vader
index 1d34c036..40a2b749 100644
--- a/test/test_virtualtext.vader
+++ b/test/test_virtualtext.vader
@@ -129,7 +129,7 @@ Execute(We should find a virtualtext error on line 2):
endif
Execute(We should be able to change the virtualtext prefix globally):
- let g:ale_virtualtext_prefix = '> '
+ let g:ale_virtualtext_prefix = '%severity%: '
if has('patch-9.0.0297') || has('nvim-0.8.0')
let g:ale_virtualtext_cursor = 'current'
@@ -138,7 +138,7 @@ Execute(We should be able to change the virtualtext prefix globally):
" Tick the timer.
sleep 1ms
- AssertEqual '> Line 1 error', ale#virtualtext#GetLastMessageForTests()
+ AssertEqual 'Error: Line 1 error', ale#virtualtext#GetLastMessageForTests()
endif
Execute(We should be able to change the virtualtext prefix per-buffer):
@@ -154,19 +154,6 @@ Execute(We should be able to change the virtualtext prefix per-buffer):
AssertEqual 'B> Line 1 error', ale#virtualtext#GetLastMessageForTests()
endif
-Execute(We should be format in other data from the loclist items):
- let g:ale_virtualtext_prefix = '%severity%: '
-
- if has('patch-9.0.0297') || has('nvim-0.8.0')
- let g:ale_virtualtext_cursor = 'current'
- call cursor(1, 1)
- call ale#virtualtext#ShowCursorWarningWithDelay()
- " Tick the timer.
- sleep 1ms
-
- AssertEqual 'Error: Line 1 error', ale#virtualtext#GetLastMessageForTests()
- endif
-
Execute(We should set errors across all lines):
if has('patch-9.0.0297') || has('nvim-0.8.0')
call ale#virtualtext#SetTexts(bufnr(''), g:ale_buffer_info[bufnr('')].loclist)
diff --git a/test/test_wrap_comand.vader b/test/test_wrap_comand.vader
index 59c61516..9c48fe7d 100644
--- a/test/test_wrap_comand.vader
+++ b/test/test_wrap_comand.vader
@@ -23,12 +23,7 @@ Execute(The command wrapper should work with a nice command):
call TestCommand('nice -n 5 foo bar', 'foo bar')
-Execute(The command wrapper should work with a nice command with an explicit marker):
- let b:ale_command_wrapper = 'nice -n 5 %*'
-
- call TestCommand('nice -n 5 foo bar', 'foo bar')
-
-Execute(Wrappers with spread arguments in the middle should be supported):
+Execute(The command wrapper should spread arguments correctly):
let b:ale_command_wrapper = 'wrap %* --'
call TestCommand('wrap foo bar --', 'foo bar')