--- /dev/null
+Before:
+ call ale#test#SetDirectory('/testplugin/test/handler')
+ call ale#test#SetFilename('testfile.less')
+
+ runtime ale_linters/less/lessc.vim
+
+After:
+ call ale#test#RestoreDirectory()
+ call ale#linter#Reset()
+
+Execute(The lessc handler should handle errors for the current file correctly):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 2,
+ \ 'col': 1,
+ \ 'type': 'E',
+ \ 'text': 'Unrecognised input. Possibly missing something',
+ \ },
+ \ ],
+ \ ale_linters#less#lessc#Handle(bufnr(''), [
+ \ 'ParseError: Unrecognised input. Possibly missing something in - on line 2, column 1:',
+ \ '1 vwewww',
+ \ '2 ',
+ \])
+
+Execute(The lessc handler should handle errors for other files in the same directory correctly):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 2,
+ \ 'col': 1,
+ \ 'type': 'E',
+ \ 'text': 'Unrecognised input. Possibly missing something',
+ \ 'filename': ale#path#Simplify(g:dir . '/imported.less')
+ \ },
+ \ {
+ \ 'lnum': 2,
+ \ 'col': 1,
+ \ 'type': 'E',
+ \ 'text': 'Unrecognised input. Possibly missing something',
+ \ 'filename': ale#path#Simplify(g:dir . '/imported.less')
+ \ },
+ \ ],
+ \ ale_linters#less#lessc#Handle(bufnr(''), [
+ \ 'ParseError: Unrecognised input. Possibly missing something in imported.less on line 2, column 1:',
+ \ '1 vwewww',
+ \ '2 ',
+ \ 'ParseError: Unrecognised input. Possibly missing something in ./imported.less on line 2, column 1:',
+ \ '1 vwewww',
+ \ '2 ',
+ \])
+
+Execute(The lessc handler should handle errors for files in directories above correctly):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 2,
+ \ 'col': 1,
+ \ 'type': 'E',
+ \ 'text': 'Unrecognised input. Possibly missing something',
+ \ 'filename': ale#path#Simplify(g:dir . '/../imported2.less')
+ \ },
+ \ ],
+ \ ale_linters#less#lessc#Handle(bufnr(''), [
+ \ 'ParseError: Unrecognised input. Possibly missing something in ../imported2.less on line 2, column 1:',
+ \ '1 vwewww',
+ \ '2 ',
+ \])