Skip to content
Snippets Groups Projects

compare entities and parent/property lists

Merged Henrik tom Wörden requested to merge f-review-lists-and-compare into dev
1 unresolved thread
1 file
+ 34
4
Compare changes
  • Side-by-side
  • Inline
+ 34
4
@@ -115,13 +115,23 @@ def test_compare_entities():
r2.add_property("tests_TT", value=45)
r1.add_property("datatype", value=45, datatype=db.INTEGER)
r2.add_property("datatype", value=45)
r1.add_property("entity_id", value=2)
r2.add_property("entity_id", value=24)
r1.add_property("entity_mix_e", value=2)
r2.add_property("entity_mix_e", value=db.Entity(id=2))
r1.add_property("entity_mix_d", value=22)
r2.add_property("entity_mix_d", value=db.Entity(id=2))
r1.add_property("entity_Ent_e", value=db.Entity(id=2))
r2.add_property("entity_Ent_e", value=db.Entity(id=2))
r1.add_property("entity_Ent_d", value=db.Entity(id=2))
r2.add_property("entity_Ent_d", value=db.Entity(id=22))
diff_r1, diff_r2 = compare_entities(r1, r2)
assert len(diff_r1["parents"]) == 1
assert len(diff_r2["parents"]) == 0
assert len(diff_r1["properties"]) == 5
assert len(diff_r2["properties"]) == 5
assert len(diff_r1["properties"]) == 10
assert len(diff_r2["properties"]) == 10
assert "test" not in diff_r1["properties"]
assert "test" not in diff_r2["properties"]
@@ -143,7 +153,20 @@ def test_compare_entities():
assert "datatype" in diff_r2["properties"]
assert "datatype" in diff_r2["properties"]["datatype"]
# test compare units of properties
assert "entity_id" in diff_r1["properties"]
assert "entity_id" in diff_r2["properties"]
assert "entity_mix_e" in diff_r1["properties"]
assert "entity_mix_e" in diff_r2["properties"]
assert "entity_Ent_e" in diff_r1["properties"]
assert "entity_Ent_e" in diff_r2["properties"]
assert "entity_mix_d" in diff_r1["properties"]
assert "entity_mix_d" in diff_r2["properties"]
assert "entity_Ent_d" in diff_r1["properties"]
assert "entity_Ent_d" in diff_r2["properties"]
def test_compare_entities_units():
r1 = db.Record()
r2 = db.Record()
r1.add_property("test", value=2, unit="cm")
@@ -767,12 +790,19 @@ B: something else"""
# test whether an id is correctly overwritten by an entity without id
recA = db.Record().add_parent("A").add_property(name="B", value=112)
newRec = db.Record()
newRec = db.Record().add_parent("B").add_property("c")
recB = db.Record().add_parent("A").add_property(name="B", value=newRec)
merge_entities(recA, recB, force=True)
assert recA.get_property("B").value == newRec
recA = db.Record().add_parent("A").add_property(name="B", value=[112],
datatype=db.LIST("B"))
recB = db.Record().add_parent("A").add_property(name="B", value=[newRec], datatype=db.LIST(db.REFERENCE))
merge_entities(recA, recB, force=True)
assert recA.get_property("B").value == [newRec]
def test_merge_missing_list_datatype_82():
"""Merging two properties, where the list-valued one has no datatype."""
Loading