+Before:
+ runtime ale_linters/fish/fish.vim
+
+After:
+ call ale#linter#Reset()
+
+Execute(The fish handler should handle basic warnings and syntax errors):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 20,
+ \ 'col': 23,
+ \ 'text': "Unsupported use of '||'. In fish, please use 'COMMAND; or COMMAND'.",
+ \ },
+ \ {
+ \ 'lnum': 26,
+ \ 'col': 7,
+ \ 'text': "Illegal command name '(prompt_pwd)'",
+ \ },
+ \ {
+ \ 'lnum': 36,
+ \ 'col': 1,
+ \ 'text': "'end' outside of a block",
+ \ },
+ \ ],
+ \ ale_linters#fish#fish#Handle(1, [
+ \ "fish_prompt.fish (line 20): Unsupported use of '||'. In fish, please use 'COMMAND; or COMMAND'.",
+ \ 'if set -q SSH_CLIENT || set -q SSH_TTY',
+ \ ' ^',
+ \ "fish_prompt.fish (line 26): Illegal command name '(prompt_pwd)'",
+ \ ' (prompt_pwd) \',
+ \ ' ^',
+ \ "fish_prompt.fish (line 36): 'end' outside of a block",
+ \ 'end',
+ \ '^',
+ \ 'config.fish (line 45):',
+ \ "abbr --add p 'cd ~/Projects'",
+ \ '^',
+ \ ])
+
+Execute(The fish handler should handle problems where the problem before before the line with the line number):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 2,
+ \ 'col': 23,
+ \ 'text': 'Unsupported use of ''||''. In fish, please use ''COMMAND; or COMMAND''.',
+ \ },
+ \ {
+ \ 'lnum': 5,
+ \ 'col': 1,
+ \ 'text': 'wat',
+ \ },
+ \ ],
+ \ ale_linters#fish#fish#Handle(bufnr(''), [
+ \ 'Unsupported use of ''||''. In fish, please use ''COMMAND; or COMMAND''.',
+ \ '/tmp/vLz620o/258/test.fish (line 2): if set -q SSH_CLIENT || set -q SSH_TTY',
+ \ ' ^',
+ \ '/tmp/vLz620o/258/test.fish (line 5): wat',
+ \ ' ^',
+ \ ])