summaryrefslogtreecommitdiff
path: root/test/handler/test_perl_handler.vader
blob: 1effd68ceea9876c2d4e8c07e1ad63ae4e8e9cf8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Before:
  silent! cd /testplugin/test/handler
  let g:dir = getcwd()

  runtime ale_linters/perl/perl.vim

After:
  silent execute 'cd ' . fnameescape(g:dir)
  unlet! g:dir

  call ale#linter#Reset()

Execute(The Perl linter should ignore errors from other files):
  call ale#test#SetFilename('bar.pl')

  AssertEqual
  \ [
  \    {'lnum': '2', 'type': 'E', 'text': 'Compilation failed in require'},
  \ ],
  \ ale_linters#perl#perl#Handle(bufnr(''), [
  \   'syntax error at ' . g:dir . '/foo.pm line 4, near "aklsdfjmy "',
  \   'Compilation failed in require at ' . g:dir . '/bar.pl line 2.',
  \   'BEGIN failed--compilation aborted at ' . g:dir . '/bar.pl line 2.',
  \ ])

Execute(The Perl linter should complain about failing to locate modules):
  AssertEqual
  \ [
  \    {
  \     'lnum': '23',
  \     'type': 'E',
  \     'text': 'Can''t locate JustOneDb.pm in @INC (you may need to install the JustOneDb module) (@INC contains: /home/local/sean/work/PostgreSQL/6616/../../../../lib /home/local/sean/work/PostgreSQL/6616/lib lib /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .)',
  \   },
  \ ],
  \ ale_linters#perl#perl#Handle(bufnr(''), [
  \ 'Can''t locate JustOneDb.pm in @INC (you may need to install the JustOneDb module) (@INC contains: /home/local/sean/work/PostgreSQL/6616/../../../../lib /home/local/sean/work/PostgreSQL/6616/lib lib /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at - line 23.',
  \ 'BEGIN failed--compilation aborted at - line 23.',
  \ ])