Execute(HandleCSSLintFormat should handle CSS errors): AssertEqual \ [ \ { \ 'lnum': 2, \ 'col': 1, \ 'type': 'E', \ 'text': 'Expected RBRACE at line 2, col 1.', \ 'code': 'errors', \ }, \ { \ 'lnum': 2, \ 'col': 5, \ 'type': 'W', \ 'text': 'Expected ... but found ''wat''.', \ 'code': 'known-properties', \ }, \ ], \ 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 (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, [ \ ':8:5: warning: conversion lacks type at end of format [-Wformat=]', \ ':10:27: error: invalid operands to binary - (have ‘int’ and ‘char *’)', \ ]) Execute (HandleGCCFormat should replace Unicode quotes): AssertEqual \ [ \ { \ 'lnum': 8, \ 'col': 5, \ 'type': 'W', \ 'text': "'''' \"\"", \ }, \ ], \ ale#handlers#gcc#HandleGCCFormat(42, [':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.', \ ]) 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', \ ])