From 01a9dde0dc340c9cc5cb68e2729c06bdef42f801 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <henrik@trineo.org> Date: Thu, 12 Aug 2021 16:50:04 +0200 Subject: [PATCH] FIXES --- integrationtests/filldb.sh | 1 + src/caosadvancedtools/cfoods/bids/dataset_cfood.py | 13 +++++++------ src/caosadvancedtools/cfoods/bids/datastructure.py | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/integrationtests/filldb.sh b/integrationtests/filldb.sh index 9f55365e..9b903726 100755 --- a/integrationtests/filldb.sh +++ b/integrationtests/filldb.sh @@ -6,6 +6,7 @@ python3 -m caosadvancedtools.loadFiles /opt/caosdb/mnt/extroot/DataAnalysis python3 -m caosadvancedtools.loadFiles /opt/caosdb/mnt/extroot/SimulationData python3 -m caosadvancedtools.loadFiles /opt/caosdb/mnt/extroot/Publications python3 -m caosadvancedtools.loadFiles /opt/caosdb/mnt/extroot/Software +python3 -m caosadvancedtools.loadFiles /opt/caosdb/mnt/extroot/bids python3 insert_model.py python3 insert_some.py python3 crawl.py / diff --git a/src/caosadvancedtools/cfoods/bids/dataset_cfood.py b/src/caosadvancedtools/cfoods/bids/dataset_cfood.py index c3450b01..b7206a4b 100644 --- a/src/caosadvancedtools/cfoods/bids/dataset_cfood.py +++ b/src/caosadvancedtools/cfoods/bids/dataset_cfood.py @@ -20,12 +20,13 @@ # along with this program. If not, see <https://www.gnu.org/licenses/>. import json +from dataclasses import dataclass import caosdb as db -from dataclasses import dataclass from caosadvancedtools.cfood import (AbstractFileCFood, assure_has_description, assure_has_parent, assure_has_property, - assure_object_is_in_list, get_entity, fileguide) + assure_object_is_in_list, + assure_property_is, fileguide, get_entity) from .datastructure import BIDSStructure @@ -56,12 +57,12 @@ class DataSetCFood(AbstractFileCFood): self.dataset = db.Record() self.dataset.add_parent(name=dm.dataset) self.dataset.add_property(name=dm.bids_folder_name, value=self.match.group('bids_folder_name')) - pass - # self.identifiables.extend(stuff) + self.identifiables.append(self.dataset) def update_identifiables(self): # set description - dataset_description = json.load(fileguide.access(self.crawled_path)) + with open(fileguide.access(self.crawled_path)) as jfi: + dataset_description = json.load(jfi) if "Name" not in dataset_description: raise ValueError("Name of the dataset must be set in" @@ -70,4 +71,4 @@ class DataSetCFood(AbstractFileCFood): assure_property_is(entity=self.dataset, name="name", value=dataset_description['Name'], - to_be_update=self.to_be_update) + to_be_updated=self.to_be_updated) diff --git a/src/caosadvancedtools/cfoods/bids/datastructure.py b/src/caosadvancedtools/cfoods/bids/datastructure.py index 2ba7c37f..bec55ddb 100644 --- a/src/caosadvancedtools/cfoods/bids/datastructure.py +++ b/src/caosadvancedtools/cfoods/bids/datastructure.py @@ -24,7 +24,7 @@ This module contains regular expressions neeeded for the BIDS folder structure. class BIDSStructure(object): - bidsfolder_pattern = (r"(?P<bids_folder_name>((?!/).)*)/") + bidsfolder_pattern = (r".*/(?P<bids_folder_name>((?!/).)*)/") date_pattern = r"(?P<date>\d{2,4}[-_]\d{1,2}[-_]\d{1,2})" date_suffix_pattern = r"(_(?P<suffix>(((?!/).)*)))?/" dataset_description = bidsfolder_pattern+r"dataset_description\.json$" -- GitLab