From 36e27fb01aac67cb6a47106718f758d5fa7f1b7e Mon Sep 17 00:00:00 2001 From: fspreck <f.spreckelsen@indiscale.com> Date: Mon, 14 Mar 2022 13:58:33 +0100 Subject: [PATCH] MAINT: Disable `role: File` for now in parser --- src/caosadvancedtools/models/parser.py | 6 +++++- unittests/test_parser.py | 14 ++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/caosadvancedtools/models/parser.py b/src/caosadvancedtools/models/parser.py index a6d37045..22632191 100644 --- a/src/caosadvancedtools/models/parser.py +++ b/src/caosadvancedtools/models/parser.py @@ -272,7 +272,11 @@ class Parser(object): elif definition["role"] == "Record": self.model[name] = db.Record(name=name) elif definition["role"] == "File": - self.model[name] = db.File(name=name) + # TODO(fspreck) Implement files at some later point in time + raise NotImplementedError( + "The definition of file objects is not yet implemented.") + + # self.model[name] = db.File(name=name) elif definition["role"] == "Property": self.model[name] = db.Property(name=name) else: diff --git a/unittests/test_parser.py b/unittests/test_parser.py index 29594bd5..c3f09462 100644 --- a/unittests/test_parser.py +++ b/unittests/test_parser.py @@ -1,6 +1,7 @@ import unittest from datetime import date from tempfile import NamedTemporaryFile +from pytest import raises import caosdb as db from caosadvancedtools.models.parser import (TwiceDefinedException, @@ -460,3 +461,16 @@ TestExperiment: 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 + + +def test_file_role(): + """Not implemented for now, see + https://gitlab.indiscale.com/caosdb/src/caosdb-advanced-user-tools/-/issues/74. + + """ + model = """ +F: + role: File +""" + with raises(NotImplementedError): + entities = parse_model_from_string(model) -- GitLab