X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/0ee596c5c5e11fc79598407eaf22f83d279f7e9e..5a4872f466ebd76ddd532bdf2798554421c53df4:/.vim/bundle/ale/test/handler/test_golangci_lint_handler.vader diff --git a/.vim/bundle/ale/test/handler/test_golangci_lint_handler.vader b/.vim/bundle/ale/test/handler/test_golangci_lint_handler.vader new file mode 100644 index 00000000..34f51d78 --- /dev/null +++ b/.vim/bundle/ale/test/handler/test_golangci_lint_handler.vader @@ -0,0 +1,146 @@ +Before: + runtime ale_linters/go/golangci_lint.vim + +After: + call ale#linter#Reset() + +Execute (The golangci-lint handler should handle only typecheck lines as errors): + call ale#test#SetFilename('app/main.go') + + AssertEqual + \ [ + \ { + \ 'lnum': 1, + \ 'col': 0, + \ 'text': 'typecheck - found packages main (main.go) and validator (validation.go) in ', + \ 'type': 'E', + \ 'filename': ale#path#Simplify(expand('%:p:h') . '/main.go'), + \ }, + \ { + \ 'lnum': 1, + \ 'col': 1, + \ 'text': 'typecheck - package validator_test; expected package main_test', + \ 'type': 'E', + \ 'filename': ale#path#Simplify(expand('%:p:h') . '/validation_encoder_test.go'), + \ }, + \ { + \ 'lnum': 1, + \ 'col': 1, + \ 'text': 'typecheck - package validator_test; expected package main_test', + \ 'type': 'E', + \ 'filename': ale#path#Simplify(expand('%:p:h') . '/validation_error_test.go'), + \ }, + \ { + \ 'lnum': 505, + \ 'col': 75, + \ 'text': 'gomnd - Magic number: 404, in detected', + \ 'type': 'W', + \ 'filename': ale#path#Simplify(expand('%:p:h') . '/main.go'), + \ } + \ ], + \ ale_linters#go#golangci_lint#Handler(bufnr(''), [ + \ '{', + \ ' "Issues": [', + \ ' {', + \ ' "FromLinter": "typecheck",', + \ ' "Text": "found packages main (main.go) and validator (validation.go) in ",', + \ ' "Severity": "",', + \ ' "SourceLines": [', + \ ' "package main"', + \ ' ],', + \ ' "Pos": {', + \ ' "Filename": "main.go",', + \ ' "Offset": 0,', + \ ' "Line": 1,', + \ ' "Column": 0', + \ ' },', + \ ' "ExpectNoLint": false,', + \ ' "ExpectedNoLintLinter": ""', + \ ' },', + \ ' {', + \ ' "FromLinter": "typecheck",', + \ ' "Text": "package validator_test; expected package main_test",', + \ ' "Severity": "",', + \ ' "SourceLines": [', + \ ' "package validator_test"', + \ ' ],', + \ ' "Pos": {', + \ ' "Filename": "validation_encoder_test.go",', + \ ' "Offset": 0,', + \ ' "Line": 1,', + \ ' "Column": 1', + \ ' },', + \ ' "ExpectNoLint": false,', + \ ' "ExpectedNoLintLinter": ""', + \ ' },', + \ ' {', + \ ' "FromLinter": "typecheck",', + \ ' "Text": "package validator_test; expected package main_test",', + \ ' "Severity": "",', + \ ' "SourceLines": [', + \ ' "package validator_test"', + \ ' ],', + \ ' "Pos": {', + \ ' "Filename": "validation_error_test.go",', + \ ' "Offset": 0,', + \ ' "Line": 1,', + \ ' "Column": 1', + \ ' },', + \ ' "ExpectNoLint": false,', + \ ' "ExpectedNoLintLinter": ""', + \ ' },', + \ ' {', + \ ' "FromLinter": "gomnd",', + \ ' "Text": "Magic number: 404, in detected",', + \ ' "Severity": "",', + \ ' "SourceLines": [', + \ ' "package validator_test"', + \ ' ],', + \ ' "Pos": {', + \ ' "Filename": "main.go",', + \ ' "Offset": 0,', + \ ' "Line": 505,', + \ ' "Column": 75', + \ ' },', + \ ' "ExpectNoLint": false,', + \ ' "ExpectedNoLintLinter": ""', + \ ' }', + \ ' ]', + \ '}', + \ ]) + +Execute (The golangci-lint handler should set proper filename): + call ale#test#SetFilename('app/cmd/server/main.go') + + AssertEqual + \ [ + \ { + \ 'lnum': 198, + \ 'col': 19, + \ 'text': 'funlen - Function getConfig has too many statements (51 > 50)', + \ 'type': 'W', + \ 'filename': ale#path#Simplify(expand('%:p:h') . '/main.go'), + \ }, + \ ], + \ ale_linters#go#golangci_lint#Handler(bufnr(''), [ + \ '{', + \ ' "Issues": [', + \ ' {', + \ ' "FromLinter": "funlen",', + \ ' "Text": "Function getConfig has too many statements (51 > 50)",', + \ ' "Severity": "",', + \ ' "SourceLines": [', + \ ' "package main"', + \ ' ],', + \ ' "Pos": {', + \ ' "Filename": "cmd/server/main.go",', + \ ' "Offset": 5374,', + \ ' "Line": 198,', + \ ' "Column": 19', + \ ' },', + \ ' "ExpectNoLint": false,', + \ ' "ExpectedNoLintLinter": ""', + \ ' }', + \ ' ]', + \ '}', + \ ])