From 5b7a0dfece47a790c3549103b21bbf0d70f515a6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <h.tomwoerden@indiscale.com>
Date: Sun, 24 Sep 2023 14:35:59 +0200
Subject: [PATCH] TST: add another parents setting test case

---
 unittests/test_parent_cfood.yml | 4 ++++
 unittests/test_scanner.py       | 6 +++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/unittests/test_parent_cfood.yml b/unittests/test_parent_cfood.yml
index 809b5e5f..afb158b3 100644
--- a/unittests/test_parent_cfood.yml
+++ b/unittests/test_parent_cfood.yml
@@ -16,6 +16,8 @@ data:
       name: "p"
     Campaign:
       name: "c"
+    Stuff:
+      name: "s"
   subtree:
     Experiment:
       type: DictElement
@@ -27,6 +29,8 @@ data:
             parents: ["Projekt"]
         Campaign:
             parents: ["Cap"]
+        Stuff:
+          name: "s"
     Experiment2:
       type: DictElement
       match: '.*'
diff --git a/unittests/test_scanner.py b/unittests/test_scanner.py
index 64b27380..9e6424dd 100644
--- a/unittests/test_scanner.py
+++ b/unittests/test_scanner.py
@@ -289,7 +289,7 @@ def test_record_parents():
 
     records = scan_structure_elements(DictElement(name="", value=data), crawler_definition,
                                    converter_registry)
-    assert len(records)==3
+    assert len(records)==4
     for rec in records:
         if rec.name == 'e':
             assert rec.parents[0].name == 'Exp' # default parent was overwritten
@@ -301,3 +301,7 @@ def test_record_parents():
         elif rec.name == 'p':
             assert rec.parents[0].name == 'Projekt' # top level set parent was overwritten
             assert len(rec.parents)==1
+        elif rec.name == 's':
+            assert rec.parents[0].name == 'Stuff' # default parent stays if no parent is given on
+                                                  # lower levels
+            assert len(rec.parents)==1
-- 
GitLab