From 5e5b00a2621d95352994bb372b6cfedee25026c3 Mon Sep 17 00:00:00 2001 From: Antoine Augusti Date: Thu, 28 Dec 2023 09:36:35 +0100 Subject: [PATCH] =?UTF-8?q?G=C3=A8re=20erreur=20HTTP=20dans=20Transport.GT?= =?UTF-8?q?FSRT=20(#3683)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix exception * Use inspect on error reason elsewhere --- apps/transport/lib/jobs/resource_history_job.ex | 2 +- apps/transport/lib/transport/gtfs_rt.ex | 2 +- .../lib/transport_web/live/siri_querier_live.ex | 2 +- apps/transport/test/transport/gtfs_rt_test.exs | 10 ++++++++-- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/apps/transport/lib/jobs/resource_history_job.ex b/apps/transport/lib/jobs/resource_history_job.ex index 1540c4f0dd..9f54856d8c 100644 --- a/apps/transport/lib/jobs/resource_history_job.ex +++ b/apps/transport/lib/jobs/resource_history_job.ex @@ -288,7 +288,7 @@ defmodule Transport.Jobs.ResourceHistoryJob do {:error, "Got a non 200 status: #{status}"} {:error, %HTTPoison.Error{reason: reason}} -> - {:error, "Got an error: #{reason}"} + {:error, "Got an error: #{inspect(reason)}"} end end diff --git a/apps/transport/lib/transport/gtfs_rt.ex b/apps/transport/lib/transport/gtfs_rt.ex index 10f84331eb..0cd1764c21 100644 --- a/apps/transport/lib/transport/gtfs_rt.ex +++ b/apps/transport/lib/transport/gtfs_rt.ex @@ -26,7 +26,7 @@ defmodule Transport.GTFSRT do {:error, "Got a non 200 HTTP status code: #{status_code}"} {:error, %HTTPoison.Error{reason: reason}} -> - {:error, "Got an HTTP error: #{reason}"} + {:error, "Got an HTTP error: #{inspect(reason)}"} end end diff --git a/apps/transport/lib/transport_web/live/siri_querier_live.ex b/apps/transport/lib/transport_web/live/siri_querier_live.ex index 3b3e281434..0558ce80ff 100644 --- a/apps/transport/lib/transport_web/live/siri_querier_live.ex +++ b/apps/transport/lib/transport_web/live/siri_querier_live.ex @@ -106,7 +106,7 @@ defmodule TransportWeb.Live.SIRIQuerierLive do }) {:error, %HTTPoison.Error{reason: reason}} -> - socket |> assign(siri_response_error: reason, siri_response_status_code: nil) + socket |> assign(siri_response_error: inspect(reason), siri_response_status_code: nil) end {:noreply, socket} diff --git a/apps/transport/test/transport/gtfs_rt_test.exs b/apps/transport/test/transport/gtfs_rt_test.exs index 73603e7b8c..cd9509f747 100644 --- a/apps/transport/test/transport/gtfs_rt_test.exs +++ b/apps/transport/test/transport/gtfs_rt_test.exs @@ -39,9 +39,15 @@ defmodule Transport.GTFSRTTest do end test "HTTPoison error" do - setup_http_response(@url, {:error, %HTTPoison.Error{reason: "SSL problemz"}}) + reason = + {:tls_alert, + {:certificate_expired, + ~c"TLS client: In state certify at ssl_handshake.erl:2065 generated CLIENT ALERT: Fatal - Certificate Expired\n"}} - assert {:error, "Got an HTTP error: SSL problemz"} == GTFSRT.decode_remote_feed(@url) + setup_http_response(@url, {:error, %HTTPoison.Error{reason: reason}}) + + {:error, reason} = GTFSRT.decode_remote_feed(@url) + assert reason =~ ~r"^Got an HTTP error:" end end