Before:
  runtime ale_linters/groovy/npmgroovylint.vim

After:
  call ale#linter#Reset()

Execute(The npm-groovy-lint handler should parse JSON):
  AssertEqual
  \ [
  \   {
  \     'col': 0,
  \     'end_col': 1,
  \     'end_lnum': 2,
  \     'filename': 'test2.groovy',
  \     'lnum': 2,
  \     'text': 'Some error message',
  \     'type': 'E',
  \   },
  \   {
  \     'filename': 'test.groovy',
  \     'lnum': 1,
  \     'text': 'Some warning message',
  \     'type': 'W',
  \   },
  \ ],
  \ ale_linters#groovy#npmgroovylint#Handle(bufnr(''), [
  \   '{',
  \   '  "files" : {',
  \   '    "test.groovy" : {',
  \   '      "errors" : [',
  \   '        {',
  \   '          "id" : 0,',
  \   '          "line" : 1,',
  \   '          "msg" : "Some warning message",',
  \   '          "rule" : "SomeRule",',
  \   '          "severity" : "warning"',
  \   '        }',
  \   '      ]',
  \   '    },',
  \   '    "test2.groovy": {',
  \   '      "errors": [',
  \   '        {',
  \   '          "id" : 1,',
  \   '          "line" : 2,',
  \   '          "msg" : "Some error message",',
  \   '          "range" : {',
  \   '            "end" : {',
  \   '              "character" : 1,',
  \   '              "line" : 2',
  \   '            },',
  \   '            "start" : {',
  \   '              "character" : 0,',
  \   '              "line" : 2',
  \   '            }',
  \   '          },',
  \   '          "rule" : "SomeOtherRule",',
  \   '          "severity" : "error"',
  \   '        }',
  \   '      ]',
  \   '    }',
  \   '  }',
  \   '}',
  \ ])
