ale/test/lsp/test_lsp_error_parsing.vader

75 lines
1.8 KiB
Plaintext

Execute(Invalid responses should be handled):
AssertEqual '', ale#lsp#response#GetErrorMessage({})
AssertEqual '', ale#lsp#response#GetErrorMessage({'error': 0})
AssertEqual '', ale#lsp#response#GetErrorMessage({'error': {}})
AssertEqual '', ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': 0,
\ 'message': 'x',
\ },
\})
AssertEqual '', ale#lsp#response#GetErrorMessage({'error': {'code': -32602}})
AssertEqual '', ale#lsp#response#GetErrorMessage({'error': {'code': -32603}})
Execute(Messages without tracebacks should be handled):
AssertEqual 'xyz', ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32602,
\ 'message': 'xyz',
\ },
\})
AssertEqual 'abc', ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32603,
\ 'message': 'abc',
\ },
\})
Execute(Invalid traceback data should be tolerated):
AssertEqual 'xyz', ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32602,
\ 'message': 'xyz',
\ 'data': {
\ },
\ },
\})
AssertEqual 'xyz', ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32602,
\ 'message': 'xyz',
\ 'data': {
\ 'traceback': 0,
\ },
\ },
\})
AssertEqual 'xyz', ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32602,
\ 'message': 'xyz',
\ 'data': {
\ 'traceback': [],
\ },
\ },
\})
Execute(Messages with tracebacks should be handled):
AssertEqual "xyz\n123\n456", ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32602,
\ 'message': 'xyz',
\ 'data': {
\ 'traceback': ['123', '456'],
\ },
\ },
\})
Execute(Messages with string data should be handled):
AssertEqual "xyz\nUncaught Exception", ale#lsp#response#GetErrorMessage({
\ 'error': {
\ 'code': -32602,
\ 'message': 'xyz',
\ 'data': 'Uncaught Exception',
\ },
\})