From c8b0728a21ff9659738c117f558f92d5e15083a1 Mon Sep 17 00:00:00 2001
From: "i.nueske" <i.nueske@indiscale.com>
Date: Sat, 30 Nov 2024 16:06:28 +0100
Subject: [PATCH] MNT: Accept "" as a valid name in compare_entities

---
 src/linkahead/apiutils.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/linkahead/apiutils.py b/src/linkahead/apiutils.py
index fd2c23d6..9e4ba622 100644
--- a/src/linkahead/apiutils.py
+++ b/src/linkahead/apiutils.py
@@ -379,14 +379,15 @@ def compare_entities(entity0: Optional[Entity] = None,
 
     # compare properties
     for prop in entity0.properties:
-        key = prop.name if prop.name else prop.id  # ToDo: Would making id default break anything?
+        key = prop.name if prop.name is not None else prop.id  # ToDo: Would making id default break anything?
         matching = entity1.properties.filter(prop)
         if len(matching) == 0:
             # entity1 has prop, entity0 does not
             diff[0]["properties"][key] = {}
         elif len(matching) == 1:
             # It's possible that prop has name and id, but match only has id
-            key = prop.name if prop.name and matching[0].name else prop.id
+            key = prop.name if (prop.name is not None and
+                                matching[0].name is not None) else prop.id
             diff[0]["properties"][key] = {}
             diff[1]["properties"][key] = {}
             propdiff = (diff[0]["properties"][key],
@@ -431,7 +432,7 @@ def compare_entities(entity0: Optional[Entity] = None,
 
     # we have not yet compared properties that do not exist in entity0
     for prop in entity1.properties:
-        key = prop.name if prop.name else prop.id  # ToDo: Would making id default break anything?
+        key = prop.name if prop.name is not None else prop.id  # ToDo: Would making id default break anything?
         # check how often the property appears in entity0
         num_prop_in_ent0 = len(entity0.properties.filter(prop))
         if num_prop_in_ent0 == 0:
@@ -447,7 +448,7 @@ def compare_entities(entity0: Optional[Entity] = None,
     for index, parents, other_entity in [(0, entity0.parents, entity1),
                                          (1, entity1.parents, entity0)]:
         for parent in parents:
-            key = parent.name if parent.name else parent.id  # ToDo: Would making id default break anything?
+            key = parent.name if parent.name is not None else parent.id  # ToDo: Would making id default break anything?
             matching = other_entity.parents.filter(parent)
             if len(matching) == 0:
                 diff[index]["parents"].append(key)
-- 
GitLab