fix: add DatabaseError if select dev_eui does not return correctly

This commit is contained in:
Alexis Fourmaux 2026-05-13 00:01:24 +02:00
parent e887b1d357
commit 914235064c

View file

@ -26,7 +26,10 @@ class PgDeviceRepository(DeviceRepository):
cur.execute( cur.execute(
"SELECT device_id FROM device WHERE device_eui = %s", (dev_eui,) "SELECT device_id FROM device WHERE device_eui = %s", (dev_eui,)
) )
return str(cur.fetchone()[0]) # type: ignore row = cur.fetchone()
if row is None:
raise DatabaseError(f"Device {dev_eui} introuvable après insertion")
return str(row[0])
except psycopg2.DatabaseError as e: except psycopg2.DatabaseError as e:
raise DatabaseError(f"Erreur de création du device {dev_eui}") from e raise DatabaseError(f"Erreur de création du device {dev_eui}") from e
@ -38,6 +41,6 @@ class PgDeviceRepository(DeviceRepository):
cur.execute(query) cur.execute(query)
rows = cur.fetchall() rows = cur.fetchall()
except psycopg2.DatabaseError as e: except psycopg2.DatabaseError as e:
raise DatabaseError(f"Erreur d'accès aux devices : {e}") from e raise DatabaseError("Erreur d'accès aux devices") from e
return [Device(device_id=r[0], device_eui=r[1]) for r in rows] return [Device(device_id=r[0], device_eui=r[1]) for r in rows]