diff --git a/tests/test_tenpoints.py b/tests/test_tenpoints.py index 8aa187bef64b46770671ff1deb528191f8640654..781f2933791fb1a3eeba1baaeadab77bbb4fbf61 100644 --- a/tests/test_tenpoints.py +++ b/tests/test_tenpoints.py @@ -1,12 +1,12 @@ # -*- coding: utf-8 -*- # # ** header v3.0 -# This file is a part of the CaosDB Project. +# This file is a part of the LinkAhead Project. # -# Copyright (C) 2024 Daniel Hornung # Copyright (C) 2018 Research Group Biomedical Physics, # Max-Planck-Institute for Dynamics and Self-Organization Göttingen # Copyright (C) 2024 IndiScale GmbH +# Copyright (C) 2024 Daniel Hornung # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -27,9 +27,9 @@ @author: fitschen """ -import caosdb as h +import linkahead as db import os -from caosdb.exceptions import CaosDBException +from linkahead.exceptions import LinkAheadException '''1) Struktur: @@ -55,7 +55,7 @@ Description oder einer Zahl''' def setup_function(function): try: - h.execute_query("FIND ENTITY *").delete() + db.execute_query("FIND ENTITY *").delete() except Exception as e: print(e) @@ -70,30 +70,30 @@ def test_tenpoints1_1(): enthalten (Gewicht, Beschreibung, Identifkationsnummern, etc.) ''' - c = h.Container() + c = db.Container() c.append( - h.Property( + db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text')) c.append( - h.Property( + db.Property( name="SimpleDoubleProperty", description="simple double property (from test_tenpoints.py)", datatype='double')) c.append( - h.Property( + db.Property( name="SimpleIntegerProperty", description="simple integer property (from test_tenpoints.py)", datatype='integer')) c.append( - h.Property( + db.Property( name="SimpleDatetimeProperty", description="simple datetime property (from test_tenpoints.py)", datatype='datetime')) c.append( - h.RecordType( + db.RecordType( name="SimpleRecordType", description="simple recordType (from test_tenpoints.py)") .add_property( name='SimpleTextProperty') .add_property( @@ -108,35 +108,35 @@ def test_tenpoints1_2(): ''' 1.2 Einfügen von RecordTypes, die zusätzlich Dateien referenzieren ''' - c = h.Container() + c = db.Container() c.append( - h.Property( + db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text')) c.append( - h.Property( + db.Property( name="SimpleDoubleProperty", description="simple double property (from test_tenpoints.py)", datatype='double')) c.append( - h.Property( + db.Property( name="SimpleIntegerProperty", description="simple integer property (from test_tenpoints.py)", datatype='integer')) c.append( - h.Property( + db.Property( name="SimpleDatetimeProperty", description="simple datetime property (from test_tenpoints.py)", datatype='datetime')) c.append( - h.Property( + db.Property( name="SimpleFileProperty", description="simple file property (from test_tenpoints.py)", datatype='file')) c.append( - h.RecordType( + db.RecordType( name="SimpleRecordType", description="simple recordType (from test_tenpoints.py)") .add_property( name='SimpleTextProperty') .add_property( @@ -154,35 +154,35 @@ def test_tenpoints1_3(): andere RecordTypes enthalten ''' - c = h.Container() + c = db.Container() c.append( - h.Property( + db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text')) c.append( - h.Property( + db.Property( name="SimpleDoubleProperty", description="simple double property (from test_tenpoints.py)", datatype='double')) c.append( - h.Property( + db.Property( name="SimpleIntegerProperty", description="simple integer property (from test_tenpoints.py)", datatype='integer')) c.append( - h.Property( + db.Property( name="SimpleDatetimeProperty", description="simple datetime property (from test_tenpoints.py)", datatype='datetime')) c.append( - h.Property( + db.Property( name="SimpleFileProperty", description="simple file property (from test_tenpoints.py)", datatype='file')) c.append( - h.RecordType( + db.RecordType( name="SimpleRecordType", description="simple recordType (from test_tenpoints.py)") .add_property( name='SimpleTextProperty') .add_property( @@ -192,11 +192,12 @@ def test_tenpoints1_3(): name='SimpleFileProperty')) c.append( - h.Property( + db.Property( name="ReferenceProperty", description='reference property (from test_tenpoints.py)', datatype="SimpleRecordType")) - c.append(h.RecordType(name="ComlexRecordType", description="complex recordType with references (from test_tenpoints.py)") + c.append(db.RecordType(name="ComlexRecordType", + description="complex recordType with references (from test_tenpoints)") .add_property(name='ReferenceProperty') # first method # second method, doesn't need the ReferenceProperty .add_property(name='SimpleRecordType') @@ -220,37 +221,37 @@ def test_tenpoints1_5(): RecordTypes / Properties ''' - c = h.Container() + c = db.Container() c.append( - h.Property( + db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text')) c.append( - h.Property( + db.Property( name="SimpleDoubleProperty", description="simple double property (from test_tenpoints.py)", datatype='double')) c.append( - h.Property( + db.Property( name="SimpleIntegerProperty", description="simple integer property (from test_tenpoints.py)", datatype='integer')) c.append( - h.Property( + db.Property( name="SimpleDatetimeProperty", description="simple datetime property (from test_tenpoints.py)", datatype='datetime')) c.append( - h.Property( + db.Property( name="SimpleFileProperty", description="simple file property (from test_tenpoints.py)", datatype='file')) c.insert() - d = h.Container() + d = db.Container() d.append( - h.RecordType( + db.RecordType( name="SimpleRecordType", description="simple recordType (from test_tenpoints.py)") .add_property( name='SimpleTextProperty') .add_property( @@ -260,11 +261,11 @@ def test_tenpoints1_5(): name='SimpleFileProperty')) d.append( - h.Property( + db.Property( name="ReferenceProperty", description='reference property (from test_tenpoints.py)', datatype="SimpleRecordType")) - d.append(h.RecordType(name="ComplexRecordType", description="complex recordType with references (from test_tenpoints.py)") + d.append(db.RecordType(name="ComplexRecordType", description="complex recordType with references (from test_tenpoints.py)") .add_property(name='ReferenceProperty') # first method # second method, doesn't need the ReferenceProperty .add_property(name='SimpleRecordType') @@ -272,7 +273,7 @@ def test_tenpoints1_5(): d.insert() - sr = (h.Record().add_parent(name="SimpleRecordType") + sr = (db.Record().add_parent(name="SimpleRecordType") .add_property(name="SimpleTextProperty", value="Some Text") .add_property(name="SimpleDoubleProperty", value=3.14) .add_property(name="SimpleIntegerProperty", value=1337) @@ -280,12 +281,12 @@ def test_tenpoints1_5(): sr.insert() - cr1 = (h.Record().add_parent(name="ComplexRecordType") + cr1 = (db.Record().add_parent(name="ComplexRecordType") .add_property(name="ReferenceProperty", value=sr)) cr1.insert() - cr2 = (h.Record().add_parent(name="ComplexRecordType") + cr2 = (db.Record().add_parent(name="ComplexRecordType") .add_property(name="SimpleRecordType", value=sr)) cr2.insert() @@ -299,36 +300,36 @@ def test_tenpoints2_1AND2_2(): ''' """data model.""" - c = h.Container() + c = db.Container() c.append( - h.Property( + db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text')) c.append( - h.Property( + db.Property( name="SimpleDoubleProperty", description="simple double property (from test_tenpoints.py)", datatype='double', unit="m")) c.append( - h.Property( + db.Property( name="SimpleIntegerProperty", description="simple integer property (from test_tenpoints.py)", datatype='integer')) c.append( - h.Property( + db.Property( name="SimpleDatetimeProperty", description="simple datetime property (from test_tenpoints.py)", datatype='datetime')) c.append( - h.Property( + db.Property( name="SimpleFileProperty", description="simple file property (from test_tenpoints.py)", datatype='file')) c.append( - h.RecordType( + db.RecordType( name="SimpleRecordType", description="simple recordType (from test_tenpoints.py)") .add_property( name='SimpleTextProperty', @@ -343,11 +344,12 @@ def test_tenpoints2_1AND2_2(): importance='obligatory')) c.append( - h.Property( + db.Property( name="ReferenceProperty", description='reference property (from test_tenpoints.py)', datatype="SimpleRecordType")) - c.append(h.RecordType(name="ComplexRecordType", description="complex recordType with references (from test_tenpoints.py)") + c.append(db.RecordType(name="ComplexRecordType", + description="complex recordType with references (from test_tenpoints)") .add_property(name='ReferenceProperty') # first method # second method, doesn't need the ReferenceProperty .add_property(name='SimpleRecordType') @@ -357,7 +359,7 @@ def test_tenpoints2_1AND2_2(): print(c) ''' data''' - d = h.Container() + d = db.Container() ''' create testfile ''' f = open("test.dat", "w") @@ -366,7 +368,7 @@ def test_tenpoints2_1AND2_2(): ''' prepare file record ''' d.append( - h.File( + db.File( id=-1, path='testfiles/testfile', file="test.dat", @@ -374,7 +376,7 @@ def test_tenpoints2_1AND2_2(): ''' prepare simple record with file property''' d.append( - h.Record( + db.Record( id=-2, name="SimpleRecord") .add_parent( name='SimpleRecordType') .add_property( @@ -389,7 +391,7 @@ def test_tenpoints2_1AND2_2(): name='SimpleFileProperty', value=-1)) - d.append(h.Record() + d.append(db.Record() .add_parent(name="ComplexRecordType") .add_property(name="ReferenceProperty", value=-2) ) @@ -416,23 +418,23 @@ def test_tenpoints2_3(): '''2.3 Verwendung von Einheiten''' """insert simple property with unit.""" - p1 = h.Property(name='unittestproperty', datatype='double', unit='m') + p1 = db.Property(name='unittestproperty', datatype='double', unit='m') p1.insert() '''subtyping with unit inheritance''' - p2 = h.Property(name='SubTypeOfUnitTestProperty').add_parent(id=p1.id) + p2 = db.Property(name='SubTypeOfUnitTestProperty').add_parent(id=p1.id) p2.insert() assert 'm' == p2.unit '''implement property''' - rt = h.RecordType( + rt = db.RecordType( name='SimpleRecordType', description='simple recordType (from test_tenpoints.py)').add_property( id=p2.id) rt.insert() print(rt) rtid = rt.id - rt = h.RecordType(id=rtid).retrieve() + rt = db.RecordType(id=rtid).retrieve() print(rt) assert p2.id == rt.get_properties()[0].id @@ -443,43 +445,43 @@ def test_tenpoints2_4(): '''2.4 Nachtägliches Annotieren von Datensätzen, z.B. hinzufügen einer Description oder einer Zahl''' - c = h.Container() + c = db.Container() c.append( - h.Property( + db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text')) c.append( - h.Property( + db.Property( name="SimpleDoubleProperty", description="simple double property (from test_tenpoints.py)", datatype='double')) c.append( - h.Property( + db.Property( name="SimpleIntegerProperty", description="simple integer property (from test_tenpoints.py)", datatype='integer')) c.append( - h.Property( + db.Property( name="SimpleDatetimeProperty", description="simple datetime property (from test_tenpoints.py)", datatype='datetime')) c.append( - h.Property( + db.Property( name="SimpleFileProperty", description="simple file property (from test_tenpoints.py)", datatype='file')) c.append( - h.Property( + db.Property( name="CommentProperty", description="comment property", datatype='text')) c.insert() - d = h.Container() + d = db.Container() d.append( - h.RecordType( + db.RecordType( name="SimpleRecordType", description="simple recordType (from test_tenpoints.py)") .add_property( name='SimpleTextProperty', @@ -492,11 +494,12 @@ def test_tenpoints2_4(): name='SimpleFileProperty')) d.append( - h.Property( + db.Property( name="ReferenceProperty", description='reference property (from test_tenpoints.py)', datatype="SimpleRecordType")) - d.append(h.RecordType(name="ComplexRecordType", description="complex recordType with references (from test_tenpoints.py)") + d.append(db.RecordType(name="ComplexRecordType", + description="complex recordType with references (from test_tenpoints)") .add_property(name='ReferenceProperty') # first method # second method, doesn't need the ReferenceProperty .add_property(name='SimpleRecordType') @@ -510,10 +513,10 @@ def test_tenpoints2_4(): f.close() ''' prepare file record ''' - e = h.Container() - e.append(h.File(id=-1, path='testfiles/testfile', file="test.dat")) + e = db.Container() + e.append(db.File(id=-1, path='testfiles/testfile', file="test.dat")) - sr = (h.Record().add_parent(name="SimpleRecordType") + sr = (db.Record().add_parent(name="SimpleRecordType") .add_property(name="SimpleTextProperty", value="Some Text") .add_property(name="SimpleDoubleProperty", value=3.14) .add_property(name="SimpleIntegerProperty", value=1337) @@ -523,7 +526,7 @@ def test_tenpoints2_4(): e.append(sr).insert() cr1 = ( - h.Record( + db.Record( name="My special unique record name").add_parent( name="ComplexRecordType") .add_property( name="ReferenceProperty", @@ -531,28 +534,29 @@ def test_tenpoints2_4(): cr1.insert() - cr2 = (h.Record().add_parent(name="ComplexRecordType") + cr2 = (db.Record().add_parent(name="ComplexRecordType") .add_property(name="SimpleRecordType", value=sr)) recid = cr2.insert().id '''annotate file''' - h.File( + db.File( path='testfiles/testfile').retrieve().add_property( c.get_entity_by_name("CommentProperty"), value="This is a really nice file.").update() '''annotate records''' - h.Record( + db.Record( name="My special unique record name").retrieve().add_property( c.get_entity_by_name("CommentProperty"), value="This is a really nice record.").update() - h.Record( + db.Record( id=recid).retrieve().add_property( c.get_entity_by_name("CommentProperty"), value="I don't like this record.").update() - h.execute_query( - "FIND RECORD SimpleRecordType WITH SimpleIntegerProperty=1337 AND SimpleTextProperty='Some Text'", + db.execute_query( + "FIND RECORD SimpleRecordType WITH SimpleIntegerProperty=1337" + " AND SimpleTextProperty='Some Text'", unique=True).add_property( c.get_entity_by_name("CommentProperty"), value="I looove this record!!!!!11.").update() @@ -561,18 +565,18 @@ def test_tenpoints2_4(): def test_existence(): try: - h.Property(name="SimpleTextProperty").retrieve(unique=True) + db.Property(name="SimpleTextProperty").retrieve(unique=True) - except CaosDBException: + except LinkAheadException: print("SimpleTextProperty does not exist!") - p = h.Property( + p = db.Property( name="SimpleTextProperty", description="simple text property (from test_tenpoints.py)", datatype='text').insert() if int( - h.Property( + db.Property( name="SimpleTextProperty").retrieve( unique=True).id) >= 0: print("SimpleTextProperty does exist!")