Skip to content
Snippets Groups Projects

F json schema datamodel

Merged Florian Spreckelsen requested to merge f-json-schema-datamodel into dev
1 file
+ 22
0
Compare changes
  • Side-by-side
  • Inline
+ 22
0
import unittest
from datetime import date
from tempfile import NamedTemporaryFile
import caosdb as db
@@ -421,12 +422,26 @@ Experiment:
temperature:
datatype: DOUBLE
description: 'temp'
TestExperiment:
role: Record
inherit_from_obligatory:
- Experiment
obligatory_properties:
date: 2022-03-02
identifier: Test
temperature: 23
recommended_properties:
additional_prop:
datatype: INTEGER
value: 7
"""
entities = parse_model_from_string(model)
assert "Experiment" in entities
assert "date" in entities
assert "identifier" in entities
assert "temperature" in entities
assert "TestExperiment" in entities
assert "additional_prop" in entities
assert isinstance(entities["Experiment"], db.RecordType)
assert entities["Experiment"].get_property("date") is not None
@@ -438,3 +453,10 @@ Experiment:
assert entities["Experiment"].get_property("temperature") is not None
assert entities["Experiment"].get_property("temperature").value is None
test_rec = entities["TestExperiment"]
assert isinstance(test_rec, db.Record)
assert test_rec.get_property("date").value == date(2022, 3, 2)
assert test_rec.get_property("identifier").value == "Test"
assert test_rec.get_property("temperature").value == 23
assert test_rec.get_property("additional_prop").value == 7
Loading