From 58b17c0c41f8c029748d01efc05524be47966c87 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <h.tomwoerden@indiscale.com>
Date: Wed, 19 Mar 2025 16:13:26 +0100
Subject: [PATCH] TST: add test for multiple parents

---
 unittests/test_identifiable_adapters.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/unittests/test_identifiable_adapters.py b/unittests/test_identifiable_adapters.py
index 5108e83..5b6b880 100644
--- a/unittests/test_identifiable_adapters.py
+++ b/unittests/test_identifiable_adapters.py
@@ -54,7 +54,7 @@ def mock_retrieve_RecordType(id, name):
         "Lab": db.RecordType(name="Lab"),
         "Analysis": db.RecordType(name="Analysis"),
         "MetaAnalysis": db.RecordType(name="MetaAnalysis").add_parent("Analysis"),
-        "Measurement": db.RecordType(name="Measurement").add_parent("Experiment")
+        "Measurement": db.RecordType(name="Measurement").add_parent("Experiment").add_parent("A")
     }[name]
 
 
@@ -338,3 +338,11 @@ def test_get_registered_identifiable():
     registered = ident.get_registered_identifiable(rec)
     assert registered is not None
     assert registered.parents[0].name == "Experiment"
+
+    # Same again, but with two grand parents
+    ident = CaosDBIdentifiableAdapter()
+    ident.load_from_yaml_definition(UNITTESTDIR / "example_identifiables.yml")
+    rec = db.Record().add_parent(name="Measurement")
+    registered = ident.get_registered_identifiable(rec)
+    assert registered is not None
+    assert registered.parents[0].name == "Experiment"
-- 
GitLab