" Author: Adrian Zalewski Before: runtime autoload/ale/handlers/embertemplatelint.vim After: call ale#linter#Reset() Execute(The ember-template-lint handler should parse lines correctly): let input_lines = split('{ \ "/ember-project/app/templates/application.hbs": [ \ { \ "moduleId": "app/templates/application", \ "rule": "bare-strings", \ "severity": 2, \ "message": "Non-translated string used", \ "line": 1, \ "column": 10, \ "source": " Bare String\n" \ }, \ { \ "moduleId": "app/templates/application", \ "rule": "invalid-interactive", \ "severity": 1, \ "message": "Interaction added to non-interactive element", \ "line": 3, \ "column": 6, \ "source": "" \ } \ ] \ }', '\n') AssertEqual \ [ \ { \ 'lnum': 1, \ 'col': 10, \ 'text': 'bare-strings: Non-translated string used', \ 'type': 'E', \ }, \ { \ 'lnum': 3, \ 'col': 6, \ 'text': 'invalid-interactive: Interaction added to non-interactive element', \ 'type': 'W', \ }, \ ], \ ale#handlers#embertemplatelint#Handle(347, input_lines) Execute(The ember-template-lint handler should handle template parsing error correctly): let input_lines = split('{ \ "/ember-project/app/templates/application.hbs": [ \ { \ "fatal": true, \ "moduleId": "app/templates/application", \ "message": "Parse error on line 5 ...", \ "line": 5, \ "column": 3, \ "source": "Error: Parse error on line 5 ...", \ "severity": 2 \ } \ ] \ }', '\n') AssertEqual \ [ \ { \ 'lnum': 5, \ 'col': 3, \ 'text': 'Parse error on line 5 ...', \ 'type': 'E', \ }, \ ], \ ale#handlers#embertemplatelint#Handle(347, input_lines) Execute(The ember-template-lint handler should handle no lint errors/warnings): AssertEqual \ [], \ ale#handlers#embertemplatelint#Handle(347, []) AssertEqual \ [], \ ale#handlers#embertemplatelint#Handle(347, ['{}'])