mirror of
https://github.com/dense-analysis/ale.git
synced 2025-12-24 13:01:28 +08:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
Before:
|
||||
call ale#assert#SetUpLinterTest('dart', 'analysis_server')
|
||||
|
||||
After:
|
||||
call ale#assert#TearDownLinterTest()
|
||||
|
||||
Execute(The default command should be correct):
|
||||
AssertLinter 'dart', ale#Escape('dart')
|
||||
\ . ' ./snapshots/analysis_server.dart.snapshot --lsp'
|
||||
|
||||
Execute(The executable should be configurable):
|
||||
let g:ale_dart_analysis_server_executable = 'foobar'
|
||||
|
||||
AssertLinter 'foobar', ale#Escape('foobar')
|
||||
\ . ' ./snapshots/analysis_server.dart.snapshot --lsp'
|
||||
@@ -0,0 +1,15 @@
|
||||
Before:
|
||||
call ale#assert#SetUpLinterTest('openapi', 'ibm_validator')
|
||||
|
||||
After:
|
||||
call ale#assert#TearDownLinterTest()
|
||||
|
||||
Execute(The yaml ibm-openapi-validator command callback should return the correct default string):
|
||||
AssertLinter 'lint-openapi', ale#Escape('lint-openapi') . ' %t'
|
||||
|
||||
Execute(The yaml ibm-openapi-validator command callback should be configurable):
|
||||
let g:ale_openapi_ibm_validator_executable = '~/.local/bin/lint-openapi'
|
||||
let g:ale_openapi_ibm_validator_options = '-c ~/.config'
|
||||
|
||||
AssertLinter '~/.local/bin/lint-openapi', ale#Escape('~/.local/bin/lint-openapi')
|
||||
\ . ' -c ~/.config %t'
|
||||
@@ -1,8 +1,11 @@
|
||||
Before:
|
||||
call ale#assert#SetUpLinterTest('typescript', 'xo')
|
||||
call ale#test#SetFilename('testfile.ts')
|
||||
call ale#assert#SetUpLinterTest('javascript', 'xo')
|
||||
call ale#test#SetFilename('testfile.jsx')
|
||||
unlet! b:executable
|
||||
|
||||
set filetype=javascriptreact
|
||||
runtime autoload/ale/handlers/xo.vim
|
||||
|
||||
After:
|
||||
call ale#assert#TearDownLinterTest()
|
||||
|
||||
@@ -10,11 +13,11 @@ Execute(The XO executable should be called):
|
||||
AssertLinter 'xo', ale#Escape('xo') . ' --reporter json --stdin --stdin-filename %s'
|
||||
|
||||
Execute(The XO executable should be configurable):
|
||||
let b:ale_typescript_xo_executable = 'foobar'
|
||||
let b:ale_javascript_xo_executable = 'foobar'
|
||||
|
||||
AssertLinter 'foobar', ale#Escape('foobar') . ' --reporter json --stdin --stdin-filename %s'
|
||||
|
||||
Execute(The XO options should be configurable):
|
||||
let b:ale_typescript_xo_options = '--wat'
|
||||
let b:ale_javascript_xo_options = '--wat'
|
||||
|
||||
AssertLinter 'xo', ale#Escape('xo') . ' --wat --reporter json --stdin --stdin-filename %s'
|
||||
|
||||
23
test/command_callback/test_xots_command_callback.vader
Normal file
23
test/command_callback/test_xots_command_callback.vader
Normal file
@@ -0,0 +1,23 @@
|
||||
Before:
|
||||
call ale#assert#SetUpLinterTest('typescript', 'xo')
|
||||
call ale#test#SetFilename('testfile.tsx')
|
||||
unlet! b:executable
|
||||
|
||||
set filetype=typescriptreact
|
||||
runtime autoload/ale/handlers/xo.vim
|
||||
|
||||
After:
|
||||
call ale#assert#TearDownLinterTest()
|
||||
|
||||
Execute(The XO executable should be called):
|
||||
AssertLinter 'xo', ale#Escape('xo') . ' --reporter json --stdin --stdin-filename %s'
|
||||
|
||||
Execute(The XO executable should be configurable):
|
||||
let b:ale_typescript_xo_executable = 'foobar'
|
||||
|
||||
AssertLinter 'foobar', ale#Escape('foobar') . ' --reporter json --stdin --stdin-filename %s'
|
||||
|
||||
Execute(The XO options should be configurable):
|
||||
let b:ale_typescript_xo_options = '--wat'
|
||||
|
||||
AssertLinter 'xo', ale#Escape('xo') . ' --wat --reporter json --stdin --stdin-filename %s'
|
||||
0
test/eslint-test-files/react-app/node_modules/xo/cli.js
generated
vendored
Normal file
0
test/eslint-test-files/react-app/node_modules/xo/cli.js
generated
vendored
Normal file
0
test/eslint-test-files/react-app/subdir/testfile.ts
Normal file
0
test/eslint-test-files/react-app/subdir/testfile.ts
Normal file
45
test/fixers/test_xo_fixer_callback.vader
Normal file
45
test/fixers/test_xo_fixer_callback.vader
Normal file
@@ -0,0 +1,45 @@
|
||||
Before:
|
||||
call ale#assert#SetUpFixerTest('javascript', 'xo')
|
||||
runtime autoload/ale/handlers/xo.vim
|
||||
set filetype=javascript
|
||||
|
||||
After:
|
||||
call ale#assert#TearDownFixerTest()
|
||||
|
||||
Execute(The xo callback should return the correct default values):
|
||||
call ale#test#SetFilename('../xo-test-files/monorepo/packages/a/index.js')
|
||||
|
||||
AssertFixer
|
||||
\ {
|
||||
\ 'read_temporary_file': 1,
|
||||
\ 'command': (has('win32') ? 'node.exe ' : '')
|
||||
\ . ale#Escape(ale#path#Simplify(g:dir . '/../xo-test-files/monorepo/node_modules/xo/cli.js'))
|
||||
\ . ' --fix %t',
|
||||
\ }
|
||||
|
||||
Execute(The xo callback should include custom xo options):
|
||||
let g:ale_javascript_xo_options = '--space'
|
||||
call ale#test#SetFilename('../xo-test-files/monorepo/packages/a/index.js')
|
||||
|
||||
AssertFixer
|
||||
\ {
|
||||
\ 'read_temporary_file': 1,
|
||||
\ 'command': (has('win32') ? 'node.exe ' : '')
|
||||
\ . ale#Escape(ale#path#Simplify(g:dir . '/../xo-test-files/monorepo/node_modules/xo/cli.js'))
|
||||
\ . ' --fix %t'
|
||||
\ . ' --space',
|
||||
\ }
|
||||
|
||||
Execute(--stdin should be used when xo is new enough):
|
||||
let g:ale_javascript_xo_options = '--space'
|
||||
call ale#test#SetFilename('../xo-test-files/monorepo/packages/a/index.js')
|
||||
|
||||
GivenCommandOutput ['0.30.0']
|
||||
AssertFixer
|
||||
\ {
|
||||
\ 'command': (has('win32') ? 'node.exe ' : '')
|
||||
\ . ale#Escape(ale#path#Simplify(g:dir . '/../xo-test-files/monorepo/node_modules/xo/cli.js'))
|
||||
\ . ' --stdin --stdin-filename %s'
|
||||
\ . ' --fix'
|
||||
\ . ' --space',
|
||||
\ }
|
||||
45
test/fixers/test_xots_fixer_callback.vader
Normal file
45
test/fixers/test_xots_fixer_callback.vader
Normal file
@@ -0,0 +1,45 @@
|
||||
Before:
|
||||
call ale#assert#SetUpFixerTest('typescript', 'xo')
|
||||
runtime autoload/ale/handlers/xo.vim
|
||||
set filetype=typescript
|
||||
|
||||
After:
|
||||
call ale#assert#TearDownFixerTest()
|
||||
|
||||
Execute(The xo callback should return the correct default values):
|
||||
call ale#test#SetFilename('../xo-test-files/monorepo/packages/a/index.ts')
|
||||
|
||||
AssertFixer
|
||||
\ {
|
||||
\ 'read_temporary_file': 1,
|
||||
\ 'command': (has('win32') ? 'node.exe ' : '')
|
||||
\ . ale#Escape(ale#path#Simplify(g:dir . '/../xo-test-files/monorepo/node_modules/xo/cli.js'))
|
||||
\ . ' --fix %t',
|
||||
\ }
|
||||
|
||||
Execute(The xo callback should include custom xo options):
|
||||
let g:ale_typescript_xo_options = '--space'
|
||||
call ale#test#SetFilename('../xo-test-files/monorepo/packages/a/index.ts')
|
||||
|
||||
AssertFixer
|
||||
\ {
|
||||
\ 'read_temporary_file': 1,
|
||||
\ 'command': (has('win32') ? 'node.exe ' : '')
|
||||
\ . ale#Escape(ale#path#Simplify(g:dir . '/../xo-test-files/monorepo/node_modules/xo/cli.js'))
|
||||
\ . ' --fix %t'
|
||||
\ . ' --space',
|
||||
\ }
|
||||
|
||||
Execute(--stdin should be used when xo is new enough):
|
||||
let g:ale_typescript_xo_options = '--space'
|
||||
call ale#test#SetFilename('../xo-test-files/monorepo/packages/a/index.ts')
|
||||
|
||||
GivenCommandOutput ['0.30.0']
|
||||
AssertFixer
|
||||
\ {
|
||||
\ 'command': (has('win32') ? 'node.exe ' : '')
|
||||
\ . ale#Escape(ale#path#Simplify(g:dir . '/../xo-test-files/monorepo/node_modules/xo/cli.js'))
|
||||
\ . ' --stdin --stdin-filename %s'
|
||||
\ . ' --fix'
|
||||
\ . ' --space',
|
||||
\ }
|
||||
49
test/handler/test_ibm_openapi_validator_handler.vader
Normal file
49
test/handler/test_ibm_openapi_validator_handler.vader
Normal file
@@ -0,0 +1,49 @@
|
||||
Before:
|
||||
runtime! ale_linters/openapi/ibm_validator.vim
|
||||
|
||||
After:
|
||||
call ale#linter#Reset()
|
||||
|
||||
Execute(Problems should be parsed correctly for openapi-ibm-validator):
|
||||
AssertEqual
|
||||
\ [
|
||||
\ {
|
||||
\ 'lnum': 54,
|
||||
\ 'col': 0,
|
||||
\ 'type': 'E',
|
||||
\ 'text': 'Items with a description must have content in it.',
|
||||
\ },
|
||||
\ {
|
||||
\ 'lnum': 24,
|
||||
\ 'col': 0,
|
||||
\ 'type': 'W',
|
||||
\ 'text': 'Operations must have a non-empty `operationId`.',
|
||||
\ },
|
||||
\ {
|
||||
\ 'lnum': 40,
|
||||
\ 'col': 0,
|
||||
\ 'type': 'W',
|
||||
\ 'text': 'operationIds must follow case convention: lower_snake_case',
|
||||
\ },
|
||||
\ ],
|
||||
\ ale_linters#openapi#ibm_validator#Handle(bufnr(''), [
|
||||
\ '',
|
||||
\ '[Warning] No .validaterc file found. The validator will run in default mode.',
|
||||
\ 'To configure the validator, create a .validaterc file.',
|
||||
\ '',
|
||||
\ 'errors',
|
||||
\ '',
|
||||
\ ' Message : Items with a description must have content in it.',
|
||||
\ ' Path : paths./settings.patch.description',
|
||||
\ ' Line : 54',
|
||||
\ '',
|
||||
\ 'warnings',
|
||||
\ '',
|
||||
\ ' Message : Operations must have a non-empty `operationId`.',
|
||||
\ ' Path : paths./stats.get.operationId',
|
||||
\ ' Line : 24',
|
||||
\ '',
|
||||
\ ' Message : operationIds must follow case convention: lower_snake_case',
|
||||
\ ' Path : paths./settings.get.operationId',
|
||||
\ ' Line : 40'
|
||||
\ ])
|
||||
54
test/handler/test_vala_lint_handler.vader
Normal file
54
test/handler/test_vala_lint_handler.vader
Normal file
@@ -0,0 +1,54 @@
|
||||
Before:
|
||||
runtime ale_linters/vala/vala_lint.vim
|
||||
|
||||
After:
|
||||
call ale#linter#Reset()
|
||||
|
||||
Execute(The Vala-Lint handler should parse lines correctly):
|
||||
AssertEqual
|
||||
\ [
|
||||
\ {
|
||||
\ 'lnum': 18,
|
||||
\ 'col': 18,
|
||||
\ 'text': 'Expected space before paren',
|
||||
\ 'code': 'space-before-paren',
|
||||
\ 'type': 'E',
|
||||
\ },
|
||||
\ {
|
||||
\ 'lnum': 64,
|
||||
\ 'col': 37,
|
||||
\ 'text': 'Expected space before paren',
|
||||
\ 'code': 'space-before-paren',
|
||||
\ 'type': 'W',
|
||||
\ },
|
||||
\ {
|
||||
\ 'lnum': 73,
|
||||
\ 'col': 37,
|
||||
\ 'text': 'Expected space before paren',
|
||||
\ 'code': 'space-before-paren',
|
||||
\ 'type': 'E',
|
||||
\ },
|
||||
\ ],
|
||||
\ ale_linters#vala#vala_lint#Handle(bufnr(''), [
|
||||
\ 'Application.vala',
|
||||
\ ' 18.18 error Expected space before paren space-before-paren',
|
||||
\ ' 64.37 warn Expected space before paren space-before-paren',
|
||||
\ ' 73.37 error Expected space before paren space-before-paren',
|
||||
\ ])
|
||||
|
||||
Execute(The Vala-Lint handler should ignore unknown error types):
|
||||
AssertEqual
|
||||
\ [
|
||||
\ {
|
||||
\ 'lnum': 73,
|
||||
\ 'col': 37,
|
||||
\ 'text': 'Expected space before paren',
|
||||
\ 'code': 'space-before-paren',
|
||||
\ 'type': 'E',
|
||||
\ },
|
||||
\ ],
|
||||
\ ale_linters#vala#vala_lint#Handle(bufnr(''), [
|
||||
\ 'Application.vala',
|
||||
\ ' 18.18 test Expected space before paren space-before-paren',
|
||||
\ ' 73.37 error Expected space before paren space-before-paren',
|
||||
\ ])
|
||||
@@ -3,7 +3,7 @@ Before:
|
||||
|
||||
let g:ale_warn_about_trailing_whitespace = 1
|
||||
|
||||
runtime! ale_linters/yaml/yamllint.vim
|
||||
runtime! ale/handlers/yamllint.vim
|
||||
|
||||
After:
|
||||
Restore
|
||||
@@ -29,7 +29,7 @@ Execute(Problems should be parsed correctly for yamllint):
|
||||
\ 'text': 'syntax error: expected the node content, but found ''<stream end>''',
|
||||
\ },
|
||||
\ ],
|
||||
\ ale_linters#yaml#yamllint#Handle(bufnr(''), [
|
||||
\ ale#handlers#yamllint#Handle(bufnr(''), [
|
||||
\ 'something.yaml:1:1: [warning] missing document start "---" (document-start)',
|
||||
\ 'something.yml:2:1: [error] syntax error: expected the node content, but found ''<stream end>''',
|
||||
\ ])
|
||||
@@ -45,7 +45,7 @@ Execute(The yamllint handler should respect ale_warn_about_trailing_whitespace):
|
||||
\ 'code': 'trailing-spaces',
|
||||
\ },
|
||||
\ ],
|
||||
\ ale_linters#yaml#yamllint#Handle(bufnr(''), [
|
||||
\ ale#handlers#yamllint#Handle(bufnr(''), [
|
||||
\ 'something.yml:5:18: [error] trailing spaces (trailing-spaces)',
|
||||
\ ])
|
||||
|
||||
@@ -54,6 +54,6 @@ Execute(The yamllint handler should respect ale_warn_about_trailing_whitespace):
|
||||
AssertEqual
|
||||
\ [
|
||||
\ ],
|
||||
\ ale_linters#yaml#yamllint#Handle(bufnr(''), [
|
||||
\ ale#handlers#yamllint#Handle(bufnr(''), [
|
||||
\ 'something.yml:5:18: [error] trailing spaces (trailing-spaces)',
|
||||
\ ])
|
||||
|
||||
0
test/xo-test-files/monorepo/node_modules/xo/cli.js
generated
vendored
Normal file
0
test/xo-test-files/monorepo/node_modules/xo/cli.js
generated
vendored
Normal file
0
test/xo-test-files/monorepo/package.json
Normal file
0
test/xo-test-files/monorepo/package.json
Normal file
0
test/xo-test-files/monorepo/packages/a/index.js
Normal file
0
test/xo-test-files/monorepo/packages/a/index.js
Normal file
0
test/xo-test-files/monorepo/packages/a/index.ts
Normal file
0
test/xo-test-files/monorepo/packages/a/index.ts
Normal file
0
test/xo-test-files/monorepo/packages/a/package.json
Normal file
0
test/xo-test-files/monorepo/packages/a/package.json
Normal file
Reference in New Issue
Block a user