From eeae9804b6e90a320b272682f869540b8e4837aa Mon Sep 17 00:00:00 2001
From: Guilhem Saurel <guilhem.saurel@laas.fr>
Date: Tue, 19 Mar 2024 16:21:08 +0100
Subject: [PATCH] machines: detect empty data

---
 scripts/machines.py | 41 ++++++++++++++++++++++-------------------
 1 file changed, 22 insertions(+), 19 deletions(-)

diff --git a/scripts/machines.py b/scripts/machines.py
index 68d6211..3c6a858 100755
--- a/scripts/machines.py
+++ b/scripts/machines.py
@@ -115,22 +115,25 @@ def get_parser() -> ArgumentParser:
 if __name__ == "__main__":
     args = get_parser().parse_args()
     machines_data = machines_ldap(**vars(args))
-    machines_display(machines_data, args.sort_by)
-    print()
-    users_data = users_ldap()
-    for k, v in machines_data.items():
-        if not v["utilisateur"] or v["utilisateur"] not in users_data:
-            print(f"{k}: wrong user {v['utilisateur']}")
-            continue
-        user = users_data[v["utilisateur"]]
-        if user["room"] != v["room"]:
-            print(f"{k}: wrong user's room {user['room']} != {v['room']}")
-        if user["st"] in ["JAMAIS", "NON-PERTINENT"]:
-            continue
-        d, m, y = (int(i) for i in user["st"].split("/"))
-        st = date(y, m, d)
-        if v["datePeremption"] > st:
-            print(
-                f"{k}: wrong peremption for {user['uid']}: "
-                f"{v['datePeremption']:%d/%m/%Y} > {st:%d/%m/%Y}"
-            )
+    if not machines_data:
+        print("nothing was found.")
+    else:
+        machines_display(machines_data, args.sort_by)
+        print()
+        users_data = users_ldap()
+        for k, v in machines_data.items():
+            if not v["utilisateur"] or v["utilisateur"] not in users_data:
+                print(f"{k}: wrong user {v['utilisateur']}")
+                continue
+            user = users_data[v["utilisateur"]]
+            if user["room"] != v["room"]:
+                print(f"{k}: wrong user's room {user['room']} != {v['room']}")
+            if user["st"] in ["JAMAIS", "NON-PERTINENT"]:
+                continue
+            d, m, y = (int(i) for i in user["st"].split("/"))
+            st = date(y, m, d)
+            if v["datePeremption"] > st:
+                print(
+                    f"{k}: wrong peremption for {user['uid']}: "
+                    f"{v['datePeremption']:%d/%m/%Y} > {st:%d/%m/%Y}"
+                )
-- 
GitLab