diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..cd60c0c0c7de409587e9bfbab14836d884221d6b --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,10 @@ +include: + - project: 'vr-group/in-situ-pipeline/insite' + ref: develop + file: '/test-setup.yml' + +variables: + INFO_NODE_COMMIT: $CI_COMMIT_SHA + +api_test: + extends: .api_test diff --git a/info_node/controllers/nest_controller.py b/info_node/controllers/nest_controller.py index fc9c13d6a4173c8ee53fe02dd9d57e57a667fbec..80875f169071be5503ea20a335ba7f826d4f1dcc 100644 --- a/info_node/controllers/nest_controller.py +++ b/info_node/controllers/nest_controller.py @@ -120,13 +120,12 @@ def nest_put_gids(gids, address): # noqa: E501 :rtype: Status """ - #for gid in gids: - # if gid in nest_storage.data.index.values: - # return Status(code=400, message="At least one gid already registered") - for gid in gids: - nest_storage.data.loc[gid] = [Node(address=address), None, None, multimeters] + if gid in nest_storage.data.index.values: + return Status(code=400, message="At least one gid already registered") + for gid in gids: + nest_storage.data.loc[gid] = [Node(address=address), None, None] return ok_status @@ -144,12 +143,21 @@ def nest_put_multimeter_info(id, attributes=None, gids=None): # noqa: E501 :rtype: Status """ - new_mult = MultimeterInfoInner(id, attributes,[]) - - if new_mult in nest_storage.multimeters: - return Status(code=400, message="Multimeter already registered") - - nest_storage.multimeters.append(new_mult) + new_multimeter = True + for multimeter in nest_storage.multimeters: + if multimeter.id == id: + multimeter.attributes = attributes + multimeter.gids = gids + new_multimeter = False + break + + if new_multimeter: + if gids == None: + gids = [] + if attributes == None: + attributes = [] + new_mult = MultimeterInfoInner(id, attributes, gids) + nest_storage.multimeters.append(new_mult) return ok_status diff --git a/info_node/models/storage.py b/info_node/models/storage.py index 48a763a75f6ac9ac6d7339c4eb42f0a627b3ebde..529c763ecad03a632bf4e526343437040875bf0b 100644 --- a/info_node/models/storage.py +++ b/info_node/models/storage.py @@ -7,16 +7,18 @@ class Storage(object): time_info = SimulationTimeInfo(start=0.0, end=0.0, current=0.0) nodes = [] time_per_node = {} + multimeters = [] num_populations = 0 data = pd.DataFrame({ - "gid": [], - "node": [], - "population": [], - "properties": [] + "gid": [1], + "node": ["simulation node"], + "population": [1], + "properties": [["example", "properties"]] }) def __init__(self): self.data = self.data.set_index("gid") + self.data = self.data.drop(0, axis=0) def UpdateSimulationtime(self): if len(self.time_per_node) == len(self.nodes) and len(self.time_per_node) > 0: