Skip to content
Snippets Groups Projects
Commit 21071fcb authored by Henrik tom Wörden's avatar Henrik tom Wörden
Browse files

ENH: renamed class; split test

parent cc9b9624
No related branches found
No related tags found
No related merge requests found
......@@ -10,7 +10,7 @@ from datetime import datetime
from caosdb.exceptions import TransactionError
class CFood(object):
class AbstractCFood(object):
def __init__(self, pattern):
self.pattern = re.compile(pattern)
......@@ -30,19 +30,10 @@ class CFood(object):
self.update_identifiables(entities, filename, match)
def create_identifiables(self, filename, match):
entities = {}
entities["exp"] = db.Record()
#import IPython
#IPython.embed()
entities["exp"].add_parent(name="Experiment")
entities["exp"].add_property(name="species", value=match.group)
return entities
raise NotImplementedError()
def update_identifiables(self, entities, filename, match):
entities["exp"].add_property(name="date",
value=datetime.today().isoformat())
db.Container().extend(entities.values).update()
raise NotImplementedError()
@staticmethod
def find_existing(entity):
......@@ -57,6 +48,22 @@ class CFood(object):
r = None
return r
class ExampleCFood(AbstractCFood):
def create_identifiables(self, filename, match):
entities = {}
entities["exp"] = db.Record()
#import IPython
#IPython.embed()
entities["exp"].add_parent(name="Experiment")
entities["exp"].add_property(name="species", value=match.group)
return entities
def update_identifiables(self, entities, filename, match):
entities["exp"].add_property(name="date",
value=datetime.today().isoformat())
db.Container().extend(entities.values).update()
def get_parser():
parser = argparse.ArgumentParser(description=__doc__,
formatter_class=RawTextHelpFormatter)
......@@ -67,4 +74,3 @@ def get_parser():
if __name__ == "__main__":
parser = get_parser()
args = parser.parse_args()
......@@ -2,8 +2,7 @@ import unittest
from tempfile import NamedTemporaryFile
import caosdb as db
from caosadvancedtools.cfood import CFood
from caosadvancedtools.cfood import AbstractCFood
class CFoodTest(unittest.TestCase):
......@@ -11,8 +10,18 @@ class CFoodTest(unittest.TestCase):
self.exp = db.Record()
self.exp.add_parent(name="Experiment")
self.exp.add_property(name="species", value="microunicorn")
pass
def test_check_existence(self):
assert CFood.find_existing(self.exp) is None
pass
assert AbstractCFood.find_existing(self.exp) is None
class CFoodTestExist(CFoodTest):
def setUp(self):
super().setUp()
self.exp.insert()
def test_check_existence(self):
res = AbstractCFood.find_existing(self.exp)
assert res.id == self.exp.id
def tearDown(self):
self.exp.delete()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment