Skip to content
Snippets Groups Projects

TST: add tests for caosdb-server#170

Merged Timm Fitschen requested to merge f-server-170 into dev
@@ -257,3 +257,47 @@ def test_issue_131():
@@ -257,3 +257,47 @@ def test_issue_131():
"FIND Entity WITH {} > 100.5 €".format(prop.name))]
"FIND Entity WITH {} > 100.5 €".format(prop.name))]
assert rec.id in result_ids
assert rec.id in result_ids
 
 
 
def test_issue_170():
 
"""update scalar data type to list data type"""
 
p = db.Property(name="TestProp1", datatype=db.LIST(db.INTEGER))
 
p.value = [1, 2]
 
p.insert()
 
 
p2 = db.execute_query("FIND TestProp1", unique=True)
 
assert p2.datatype == db.LIST(db.INTEGER)
 
assert p2.value == [1, 2]
 
 
p.description = "TestDescription"
 
p.update() # this failed
 
 
p2 = db.execute_query("FIND TestProp1", unique=True)
 
assert p2.datatype == db.LIST(db.INTEGER)
 
assert p2.value == [1, 2]
 
assert p2.description == "TestDescription"
 
 
p = db.Property(name="TestProp2", datatype=db.DOUBLE)
 
p.insert()
 
 
p.datatype = db.LIST(db.INTEGER)
 
p.update() # this worked because no value yet
 
p2 = db.execute_query("FIND TestProp2", unique=True)
 
assert p2.datatype == db.LIST(db.INTEGER)
 
p.value = [1, 2]
 
 
p.update() # this failed
 
p2 = db.execute_query("FIND TestProp2", unique=True)
 
assert p2.datatype == db.LIST(db.INTEGER)
 
assert p2.value == [1, 2]
 
 
p = db.Property(name="TestProp3", datatype=db.DOUBLE)
 
p.insert()
 
 
p.datatype = db.LIST(db.INTEGER)
 
p.value = [1, 2]
 
p.update() # this failed
 
 
p2 = db.execute_query("FIND TestProp3", unique=True)
 
assert p2.datatype == db.LIST(db.INTEGER)
 
assert p2.value == [1, 2]
Loading