ale/test/handler/test_common_handlers.vader

273 lines
8.7 KiB
Plaintext
Raw Normal View History

Execute(HandleCSSLintFormat should handle CSS errors):
AssertEqual
\ [
\ {
\ 'lnum': 2,
\ 'col': 1,
\ 'type': 'E',
\ 'text': '(errors) Expected RBRACE at line 2, col 1.',
\ },
\ {
\ 'lnum': 2,
\ 'col': 5,
\ 'type': 'W',
\ 'text': '(known-properties) Expected ... but found ''wat''.',
\ },
\ ],
\ ale#handlers#css#HandleCSSLintFormat(42, [
\ 'something.css: line 2, col 1, Error - Expected RBRACE at line 2, col 1. (errors)',
\ 'something.css: line 2, col 5, Warning - Expected ... but found ''wat''. (known-properties)',
\ ])
Execute(HandleCSSLintFormat should handle CSS errors without groups):
AssertEqual
\ [
\ {
\ 'lnum': 7,
\ 'col': 3,
\ 'type': 'W',
\ 'text': 'Unknown property ''fill''.',
\ },
\ {
\ 'lnum': 8,
\ 'col': 3,
\ 'type': 'W',
\ 'text': 'Unknown property ''fill-opacity''.',
\ },
\ ],
\ ale#handlers#css#HandleCSSLintFormat(42, [
\ 'something.css: line 7, col 3, Warning - Unknown property ''fill''.',
\ 'something.css: line 8, col 3, Warning - Unknown property ''fill-opacity''.',
\ ])
Execute (HandlePEP8Format should handle the correct lines of output):
AssertEqual
\ [
\ {
\ 'lnum': 6,
\ 'col': 6,
\ 'type': 'E',
\ 'text': 'E111: indentation is not a multiple of four',
\ },
\ {
\ 'lnum': 35,
\ 'col': 0,
\ 'type': 'E',
\ 'text': "EANSIBLE0002: Trailing whitespace",
\ },
\ ],
\ ale#handlers#python#HandlePEP8Format(42, [
\ "stdin:6:6: E111 indentation is not a multiple of four",
\ "test.yml:35: [EANSIBLE0002] Trailing whitespace",
\ ])
Execute (HandlePEP8Format should handle names with spaces):
AssertEqual
\ [
\ {
\ 'lnum': 6,
\ 'col': 6,
\ 'type': 'E',
\ 'text': 'E111: indentation is not a multiple of four',
\ },
\ ],
\ ale#handlers#python#HandlePEP8Format(42, [
\ 'C:\something\with spaces.py:6:6: E111 indentation is not a multiple of four',
\ ])
Execute (HandlePEP8Format should stack traces):
AssertEqual
\ [
\ {
\ 'lnum': 1,
\ 'text': 'An exception was thrown. See :ALEDetail',
\ 'detail': join([
\ 'Traceback (most recent call last):',
\ ' File "/usr/local/bin/flake8", line 7, in <module>',
\ ' from flake8.main.cli import main',
\ ' File "/usr/local/lib/python2.7/dist-packages/flake8/main/cli.py", line 2, in <module>',
\ ' from flake8.main import application',
\ ' File "/usr/local/lib/python2.7/dist-packages/flake8/main/application.py", line 17, in <module>',
\ ' from flake8.plugins import manager as plugin_manager',
\ ' File "/usr/local/lib/python2.7/dist-packages/flake8/plugins/manager.py", line 5, in <module>',
\ ' import pkg_resources',
\ ' File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 35, in <module>',
\ ' import email.parser',
\ 'ImportError: No module named parser',
\ ], "\n"),
\ },
\ ],
\ ale#handlers#python#HandlePEP8Format(42, [
\ 'Traceback (most recent call last):',
\ ' File "/usr/local/bin/flake8", line 7, in <module>',
\ ' from flake8.main.cli import main',
\ ' File "/usr/local/lib/python2.7/dist-packages/flake8/main/cli.py", line 2, in <module>',
\ ' from flake8.main import application',
\ ' File "/usr/local/lib/python2.7/dist-packages/flake8/main/application.py", line 17, in <module>',
\ ' from flake8.plugins import manager as plugin_manager',
\ ' File "/usr/local/lib/python2.7/dist-packages/flake8/plugins/manager.py", line 5, in <module>',
\ ' import pkg_resources',
\ ' File "/usr/lib/python2.7/dist-packages/pkg_resources/__init__.py", line 35, in <module>',
\ ' import email.parser',
\ 'ImportError: No module named parser',
\ ])
Execute (HandleGCCFormat should handle the correct lines of output):
AssertEqual
\ [
\ {
\ 'lnum': 8,
\ 'col': 5,
\ 'type': 'W',
\ 'text': 'conversion lacks type at end of format [-Wformat=]',
\ },
\ {
\ 'lnum': 10,
\ 'col': 27,
\ 'type': 'E',
\ 'text': 'invalid operands to binary - (have ''int'' and ''char *'')',
\ },
\ ],
\ ale#handlers#gcc#HandleGCCFormat(42, [
\ '<stdin>:8:5: warning: conversion lacks type at end of format [-Wformat=]',
\ '<stdin>:10:27: error: invalid operands to binary - (have int and char *)',
\ ])
2016-10-21 03:52:25 +00:00
Execute (HandleGCCFormat should replace Unicode quotes):
AssertEqual
\ [
\ {
\ 'lnum': 8,
\ 'col': 5,
\ 'type': 'W',
\ 'text': "'''' \"\"",
\ },
\ ],
\ ale#handlers#gcc#HandleGCCFormat(42, ['<stdin>:8:5: warning: `´ “”'])
Execute (HandleUnixFormatAsError should handle some example lines of output):
AssertEqual
\ [
\ {
\ 'lnum': 27,
\ 'col': 0,
\ 'type': 'E',
\ 'text': 'missing argument for Printf("%s"): format reads arg 2, have only 1 args',
\ },
\ {
\ 'lnum': 53,
\ 'col': 10,
\ 'type': 'E',
\ 'text': 'if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary)',
\ },
\ {
\ 'lnum': 1,
\ 'col': 1,
\ 'type': 'E',
\ 'text': '".b" is not a valid class name. Class names must begin with "-", "_" or a letter and can only contain "_", "-", a-z and 0-9.',
\ },
\ ],
\ ale#handlers#unix#HandleAsError(42, [
\ 'file.go:27: missing argument for Printf("%s"): format reads arg 2, have only 1 args',
\ 'file.go:53:10: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary)',
\ 'test.pug:1:1 ".b" is not a valid class name. Class names must begin with "-", "_" or a letter and can only contain "_", "-", a-z and 0-9.',
\ ])
2016-10-21 03:52:25 +00:00
Execute (HandleUnixFormatAsError should handle lines with no space after the colon):
AssertEqual
\ [
\ {
\ 'lnum': 27,
\ 'col': 0,
\ 'type': 'E',
\ 'text': 'foo',
\ },
\ {
\ 'lnum': 53,
\ 'col': 10,
\ 'type': 'E',
\ 'text': 'bar',
\ },
\ ],
\ ale#handlers#unix#HandleAsError(42, [
\ 'some_file.xyz:27:foo',
\ 'some_file.xyz:53:10:bar',
\ ])
Execute (HandleUnixFormatAsError should handle names with spaces):
AssertEqual
\ [
\ {
\ 'lnum': 13,
\ 'col': 90,
\ 'type': 'E',
\ 'text': 'leonard.exclamation.30ppm More than 30 ppm of exclamations. Keep them under control.',
\ },
\ ],
\ ale#handlers#unix#HandleAsError(42, [
\ '/Users/rrj/Notes/Astro/Taurus December SM.txt:13:90: leonard.exclamation.30ppm More than 30 ppm of exclamations. Keep them under control.',
\ ])
Execute (HandleUnixFormatAsWarning should handle some example lines of output):
AssertEqual
\ [
\ {
\ 'lnum': 27,
\ 'col': 0,
\ 'type': 'W',
\ 'text': 'missing argument for Printf("%s"): format reads arg 2, have only 1 args',
\ },
\ {
\ 'lnum': 53,
\ 'col': 10,
\ 'type': 'W',
\ 'text': 'if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary)',
\ },
\ ],
\ ale#handlers#unix#HandleAsWarning(42, [
\ 'file.go:27: missing argument for Printf("%s"): format reads arg 2, have only 1 args',
\ 'file.go:53:10: if block ends with a return statement, so drop this else and outdent its block (move short variable declaration to its own line if necessary)',
\ ])
Execute (Unix format functions should handle Windows paths):
AssertEqual
\ [
\ {
\ 'lnum': 27,
\ 'col': 0,
\ 'type': 'E',
\ 'text': 'foo',
\ },
\ {
\ 'lnum': 53,
\ 'col': 10,
\ 'type': 'E',
\ 'text': 'foo',
\ },
\ ],
\ ale#handlers#unix#HandleAsError(42, [
\ 'C:\Users\w0rp\AppData\Local\Temp\Xyz123.go:27: foo',
\ 'C:\Users\w0rp\AppData\Local\Temp\Xyz123.go:53:10: foo',
\ ])
Execute (HandleCppCheckFormat should handle some example lines of output):
AssertEqual
\ [
\ {
\ 'lnum': 5,
\ 'col': 0,
\ 'type': 'W',
\ 'text': 'Variable a is assigned a value that is never used. (style)',
\ },
\ {
\ 'lnum': 12,
\ 'col': 0,
\ 'type': 'E',
\ 'text': 'Array a[10] accessed at index 10, which is out of bounds. (error)',
\ },
\ ],
\ ale#handlers#cppcheck#HandleCppCheckFormat(42, [
\ '[/tmp/test.c:5]: (style) Variable a is assigned a value that is never used.',
\ '[/tmp/test.c:12]: (error) Array a[10] accessed at index 10, which is out of bounds.'
\ ])