Skip to content

Commit 5d9ab5e

Browse files
committed
raise server error on launch failure
1 parent f2fcb18 commit 5d9ab5e

File tree

2 files changed

+23
-7
lines changed

2 files changed

+23
-7
lines changed

apps/elixir_ls_debugger/lib/debugger/server.ex

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -665,16 +665,19 @@ defmodule ElixirLS.Debugger.Server do
665665

666666
{:DOWN, ^ref, :process, _pid, reason} ->
667667
if reason != :normal do
668-
Output.debugger_important("Launch request failed")
668+
message = "Launch request failed with reason\n" <> Exception.format_exit(reason)
669669

670-
Output.debugger_console(
671-
"Launch request failed with reason\n" <> Exception.format_exit(reason)
672-
)
670+
Output.debugger_console(message)
673671

674672
exit_code = 1
675673
Output.send_event("exited", %{"exitCode" => exit_code})
676674
Output.send_event("terminated", %{"restart" => false})
677-
config
675+
676+
raise ServerError,
677+
message: "launchError",
678+
format: message,
679+
variables: %{},
680+
show_user: true
678681
else
679682
raise "exit reason #{inspect(reason)} was not expected"
680683
end

apps/elixir_ls_debugger/test/debugger_test.exs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,7 @@ defmodule ElixirLS.Debugger.ServerTest do
450450
end
451451

452452
@tag :fixture
453-
test "launch mix task that fails to initialze", %{server: server} do
453+
test "launch mix task that fails to initialize", %{server: server} do
454454
in_fixture(__DIR__, "mix_project", fn ->
455455
Server.receive_packet(
456456
server,
@@ -474,7 +474,20 @@ defmodule ElixirLS.Debugger.ServerTest do
474474
})
475475
)
476476

477-
assert_receive(response(_, 2, "launch", %{}), 5000)
477+
assert_receive(
478+
error_response(
479+
_,
480+
2,
481+
"launch",
482+
"launchError",
483+
"Launch request failed with reason" <> _,
484+
%{},
485+
_,
486+
_
487+
),
488+
5000
489+
)
490+
478491
refute_receive(event(_, "initialized", %{}))
479492

480493
assert_receive event(_, "output", %{

0 commit comments

Comments
 (0)