From 6bc5b8989dc41d34b95c32c90878fd0f877ea361 Mon Sep 17 00:00:00 2001 From: G Johansson Date: Sun, 6 Aug 2023 19:07:18 +0200 Subject: [PATCH] Fix Trafivkerket Train coordinator exceptions (#97919) Fix tvt coordinator exceptions --- .../components/trafikverket_train/coordinator.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/trafikverket_train/coordinator.py b/homeassistant/components/trafikverket_train/coordinator.py index fba6eb93dd9..3125fea8e39 100644 --- a/homeassistant/components/trafikverket_train/coordinator.py +++ b/homeassistant/components/trafikverket_train/coordinator.py @@ -6,6 +6,12 @@ from datetime import date, datetime, time, timedelta import logging from pytrafikverket import TrafikverketTrain +from pytrafikverket.exceptions import ( + InvalidAuthentication, + MultipleTrainAnnouncementFound, + NoTrainAnnouncementFound, + UnknownError, +) from pytrafikverket.trafikverket_train import StationInfo, TrainStop from homeassistant.config_entries import ConfigEntry @@ -119,9 +125,13 @@ class TVDataUpdateCoordinator(DataUpdateCoordinator[TrainData]): state = await self._train_api.async_get_next_train_stop( self.from_station, self.to_station, when ) - except ValueError as error: - if "Invalid authentication" in error.args[0]: - raise ConfigEntryAuthFailed from error + except InvalidAuthentication as error: + raise ConfigEntryAuthFailed from error + except ( + NoTrainAnnouncementFound, + MultipleTrainAnnouncementFound, + UnknownError, + ) as error: raise UpdateFailed( f"Train departure {when} encountered a problem: {error}" ) from error