From 063d186feb004c0c10250d6e990338229662ba73 Mon Sep 17 00:00:00 2001
From: Florian Spreckelsen <f.spreckelsen@indiscale.com>
Date: Thu, 5 Dec 2024 16:07:43 +0100
Subject: [PATCH] TST: Test for XML comment text

---
 src/linkahead/common/models.py | 3 ++-
 unittests/test_issues.py       | 5 ++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/linkahead/common/models.py b/src/linkahead/common/models.py
index 740c81a..1caa6a4 100644
--- a/src/linkahead/common/models.py
+++ b/src/linkahead/common/models.py
@@ -1270,7 +1270,8 @@ class Entity:
         if visited_entities is None:
             visited_entities = []
         if self in visited_entities:
-            return etree.Comment("Recursive reference")
+            xml.text = xml2str(etree.Comment("Recursive reference"))
+            return xml
         visited_entities.append(self)
 
         # unwrap wrapped entity
diff --git a/unittests/test_issues.py b/unittests/test_issues.py
index 9d422ff..3b0117b 100644
--- a/unittests/test_issues.py
+++ b/unittests/test_issues.py
@@ -107,6 +107,7 @@ def test_issue_73():
     xml_str = xml2str(recB.to_xml())
     assert "<Parent name=\"RT" in xml_str
     assert "<Property name=\"RT" in xml_str
+    assert "Recursive reference" in xml_str
     assert len(xml_str) < 500
 
     # Cross-reference in the properties themselves
@@ -117,6 +118,7 @@ def test_issue_73():
     xml_str = xml2str(prop2.to_xml())
     assert "<Property name=\"Prop1" in xml_str
     assert "<Property name=\"Prop2" in xml_str
+    assert "Recursive reference" in xml_str
     assert len(xml_str) < 500
 
     # Self-reference in the datatype
@@ -124,4 +126,5 @@ def test_issue_73():
     prop.datatype = prop
     xml_str = xml2str(prop.to_xml())
     assert "datatype=" in xml_str
-    assert len(xml_str) < 100
+    assert "Recursive reference" in xml_str
+    assert len(xml_str) < 500
-- 
GitLab