diff --git a/.github/workflows/run-unittests.yml b/.github/workflows/run-unittests.yml index 94b6097..9c1841b 100644 --- a/.github/workflows/run-unittests.yml +++ b/.github/workflows/run-unittests.yml @@ -1,38 +1,35 @@ name: Python package -on: - push: - branches: - - master # Only run on pushes to master - pull_request: - types: [opened, synchronize] # Run on PRs from any branch +on: [push] jobs: unittests: - + name: Run unit tests for skaworkflows runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] - + include: + - python-version: "3.10" + - python-version: "3.11" + - python-version: "3.12" steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies - run: | - python -m pip install -U pip setuptools wheel coveralls pytest pytest-cov + run: python -m pip install -U pip setuptools wheel coveralls pytest pytest-cov + - name: Install skaworkflows - run: | - pip install . + run: pip install . + - name: Run unittests with coverage - run: | - pytest . --cov - - name: Coveralls - uses: coverallsapp/github-action@master - with: - github-token: ${{ secrets.GITHUB_TOKEN }} + run: pytest . --cov + + - name: Upload to Coveralls + run: coveralls --service=github + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 63a33bd..0000000 --- a/.travis.yml +++ /dev/null @@ -1,12 +0,0 @@ -language: python -python: - - "3.8" -# -before_install: - - curl -sSL https://install.python-poetry.org | python3 - -#install: -install: - - pip install . - -script: coverage run -m unittest discover tests -after_script: coveralls diff --git a/MANIFEST.in b/MANIFEST.in deleted file mode 100644 index 4449996..0000000 --- a/MANIFEST.in +++ /dev/null @@ -1,2 +0,0 @@ -prune tests/* -prune hpconfig/* \ No newline at end of file diff --git a/MANIFEST.ini b/MANIFEST.ini deleted file mode 100644 index a9ccdfa..0000000 --- a/MANIFEST.ini +++ /dev/null @@ -1 +0,0 @@ -graft skaworkflows/data/ \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..a446a0a --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,48 @@ +[build-system] +requires = ["setuptools>=61", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "skaworkflows" +version = "0.1.0" +description = "Workflows for experiments with SKA Science Data Processor" +authors = [ + { name = "Ryan Bunney", email = "ryan.bunney@icrar.org" }, +] +license = { text = "GNU" } +readme = "README.md" +requires-python = ">=3.10" + +dependencies = [ + "numpy>=1.2.0", + "networkx>=2.0", + "matplotlib>=3.0", + "pandas>=0.20", + "coverage", + "IPython", + "pydot", + "coveralls", + "daliuge-common", + "daliuge-engine", + "daliuge-translator", + "sdp-par-model @ git+https://github.com/top-sim/sdp-par-model", + "ipywidgets", + "scipy", + "sympy", + "notebook", + "ipywidgets", + "graphviz", + "pymp-pypi", + "pylru", + "sortedcontainers", + "pyyaml" +] + +[project.urls] +Homepage = "https://github.com/top-sim/skaworkflows" + +[tool.setuptools] +include-package-data = true + +[tool.setuptools.packages.find] +exclude = ["docs"] \ No newline at end of file diff --git a/setup.py b/setup.py deleted file mode 100644 index 479895b..0000000 --- a/setup.py +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright (C) 19/1/22 RW Bunney - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . -from setuptools import setup, find_packages - -setup( - name='skaworkflows', - version='0.1.0', - packages=find_packages(exclude=["docs"]), - # include_package_data=True, - install_requires=[ - 'numpy>=1.2.0', - 'networkx>=2.0', - 'matplotlib>=3.0', - 'pandas>=0.20', - 'coverage', - 'IPython', - 'pydot', - 'coveralls', - # 'sdp-par-model @ git+https://github.com/ska-telescope/sdp-par-model', - "daliuge-common", #@ git+https://github.com/ICRAR/daliuge.git@v3.0.0#egg&subdirectory=daliuge-common', - "daliuge-engine", # @ git+https://github.com/ICRAR/daliuge.git@v3.0.0#egg&subdirectory=daliuge-engine', - "daliuge-translator", # @ git+https://github.com/ICRAR/daliuge.git@v3.0.0#egg&subdirectory=daliuge-translator', - ], - url='https://github.com/top-sim/skaworkflows', - license='GNU', - author='Ryan Bunney', - author_email='ryan.bunney@icrar.org', - description='Workflows for experiments with SKA Science Data Processor' -) diff --git a/skaworkflows/data/hpsos/__init__.py b/skaworkflows/data/hpsos/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/skaworkflows/data/observation/__init__.py b/skaworkflows/data/observation/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/skaworkflows/data/pandas_sizing/__init__.py b/skaworkflows/data/pandas_sizing/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/skaworkflows/data/sdp-par-model_output/__init__.py b/skaworkflows/data/sdp-par-model_output/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/data/daliuge_scatter_minimal.json b/tests/data/daliuge_scatter_minimal.json index e759f5b..29e2acb 100644 --- a/tests/data/daliuge_scatter_minimal.json +++ b/tests/data/daliuge_scatter_minimal.json @@ -337,7 +337,7 @@ ] }, { - "oid": "1_2be73cd7-a38d-4053-9262-41d25ee1077a_0/0", + "oid": "1_2be73cd7-a38d-4053-9262-41d25ee1077a_0-0", "name": "UpdateGSM", "categoryType": "Application", "category": "PythonApp", @@ -635,21 +635,21 @@ "event": "", "relationship": "", "output": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "2be73cd7-a38d-4053-9262-41d25ee1077a", "inputs": [ { - "1_7abdde30-9873-41b7-8d2b-dda58fcb0c21_0/0": "relationship" + "1_7abdde30-9873-41b7-8d2b-dda58fcb0c21_0-0": "relationship" } ], "outputs": [ { - "1_0ac0d699-1f66-4aba-a2d4-b9289c69ed32_0/0": "output" + "1_0ac0d699-1f66-4aba-a2d4-b9289c69ed32_0-0": "output" } ] }, { - "oid": "1_229692c1-e068-4db9-aec1-e2e11d67bdee_0/0", + "oid": "1_229692c1-e068-4db9-aec1-e2e11d67bdee_0-0", "name": "Solve", "categoryType": "Application", "category": "PythonApp", @@ -916,21 +916,21 @@ "group_start": "0", "relationship": "", "event": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "229692c1-e068-4db9-aec1-e2e11d67bdee", "inputs": [ { - "1_e7990302-79e9-477d-81d0-7f42c4646a9d_0/0": "relationship" + "1_e7990302-79e9-477d-81d0-7f42c4646a9d_0-0": "relationship" } ], "outputs": [ { - "1_f5d4a8db-73a0-4d0b-b415-50650fa6ee80_0/0": "relationship" + "1_f5d4a8db-73a0-4d0b-b415-50650fa6ee80_0-0": "relationship" } ] }, { - "oid": "1_af8580b3-a5c1-4c70-8910-f886f7de83df_0/0/0", + "oid": "1_af8580b3-a5c1-4c70-8910-f886f7de83df_0-0-0", "name": "Grid", "categoryType": "Application", "category": "PythonApp", @@ -1198,21 +1198,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "af8580b3-a5c1-4c70-8910-f886f7de83df", "inputs": [ { - "1_0bd1aa81-d572-485f-b5ec-8234b471e935_0/0/0": "relationship" + "1_0bd1aa81-d572-485f-b5ec-8234b471e935_0-0-0": "relationship" } ], "outputs": [ { - "1_12a28856-2332-4fc3-b8f8-4b666c1f8a94_0/0/0": "relationship" + "1_12a28856-2332-4fc3-b8f8-4b666c1f8a94_0-0-0": "relationship" } ] }, { - "oid": "1_fd69889f-56eb-4f20-b3e9-ac688e7fe420_0/0/0", + "oid": "1_fd69889f-56eb-4f20-b3e9-ac688e7fe420_0-0-0", "name": "Degrid", "categoryType": "Application", "category": "PythonApp", @@ -1480,21 +1480,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "fd69889f-56eb-4f20-b3e9-ac688e7fe420", "outputs": [ { - "1_f134c465-1899-4fa6-bf27-0d5c1bf82284_0/0/0": "relationship" + "1_f134c465-1899-4fa6-bf27-0d5c1bf82284_0-0-0": "relationship" } ], "inputs": [ { - "1_d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4_0/0/0": "relationship" + "1_d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4_0-0-0": "relationship" } ] }, { - "oid": "1_0e094334-117b-48e1-a48d-b9e086a9cc88_0/0/0", + "oid": "1_0e094334-117b-48e1-a48d-b9e086a9cc88_0-0-0", "name": "Flag", "categoryType": "Application", "category": "PythonApp", @@ -1762,21 +1762,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "0e094334-117b-48e1-a48d-b9e086a9cc88", "inputs": [ { - "1_1b974210-c1b5-41f8-9f5b-647b2bdb39bb_0/0/0": "relationship" + "1_1b974210-c1b5-41f8-9f5b-647b2bdb39bb_0-0-0": "relationship" } ], "outputs": [ { - "1_0bd1aa81-d572-485f-b5ec-8234b471e935_0/0/0": "relationship" + "1_0bd1aa81-d572-485f-b5ec-8234b471e935_0-0-0": "relationship" } ] }, { - "oid": "1_54d54a36-3dce-4cd1-bdb5-d1868ab79898_0/0/0/0", + "oid": "1_54d54a36-3dce-4cd1-bdb5-d1868ab79898_0-0-0-0", "name": "Subtract Image Component", "categoryType": "Application", "category": "PythonApp", @@ -1788,7 +1788,7 @@ 0, 0 ], - "loop_ctx": "0/0", + "loop_ctx": "0-0", "weight": 5, "num_cpus": "1", "applicationArgs": { @@ -2045,21 +2045,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0/0/0", + "iid": "0-0-0-0", "lg_key": "54d54a36-3dce-4cd1-bdb5-d1868ab79898", "inputs": [ { - "1_619ff51f-bf05-4e26-9ca2-5fab1dc955ca_0/0/0/0": "relationship" + "1_619ff51f-bf05-4e26-9ca2-5fab1dc955ca_0-0-0-0": "relationship" } ], "outputs": [ { - "1_9fa4a1dc-65a8-49ee-8064-efabec01c591_0/0/0/0": "relationship" + "1_9fa4a1dc-65a8-49ee-8064-efabec01c591_0-0-0-0": "relationship" } ] }, { - "oid": "1_39a1a3a6-5c56-4c14-ab47-022d07b25197_0/0/0/0", + "oid": "1_39a1a3a6-5c56-4c14-ab47-022d07b25197_0-0-0-0", "name": "FFT", "categoryType": "Application", "category": "PythonApp", @@ -2071,7 +2071,7 @@ 0, 0 ], - "loop_ctx": "0/0", + "loop_ctx": "0-0", "weight": 5, "num_cpus": "1", "applicationArgs": { @@ -2328,21 +2328,21 @@ "group_start": "1", "event": "", "relationship": "", - "iid": "0/0/0/0", + "iid": "0-0-0-0", "lg_key": "39a1a3a6-5c56-4c14-ab47-022d07b25197", "outputs": [ { - "1_483daa57-023c-40e9-a7de-1178e4339d36_0/0/0/0": "relationship" + "1_483daa57-023c-40e9-a7de-1178e4339d36_0-0-0-0": "relationship" } ], "inputs": [ { - "1_50207c98-b5e4-42b1-9177-a9f60762e462_0/0": "relationship" + "1_50207c98-b5e4-42b1-9177-a9f60762e462_0-0": "relationship" } ] }, { - "oid": "1_483daa57-023c-40e9-a7de-1178e4339d36_0/0/0/0", + "oid": "1_483daa57-023c-40e9-a7de-1178e4339d36_0-0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -2354,7 +2354,7 @@ 0, 0 ], - "loop_ctx": "0/0", + "loop_ctx": "0-0", "weight": 5, "applicationArgs": { "event": { @@ -2580,11 +2580,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0/0", + "iid": "0-0-0-0", "lg_key": "483daa57-023c-40e9-a7de-1178e4339d36", "producers": [ { - "1_39a1a3a6-5c56-4c14-ab47-022d07b25197_0/0/0/0": "relationship" + "1_39a1a3a6-5c56-4c14-ab47-022d07b25197_0-0-0-0": "relationship" } ], "port_map": { @@ -2592,12 +2592,12 @@ }, "consumers": [ { - "1_cf4f2492-2f60-41e3-b108-a24a32a83fd1_0/0/0/0": "relationship" + "1_cf4f2492-2f60-41e3-b108-a24a32a83fd1_0-0-0-0": "relationship" } ] }, { - "oid": "1_619ff51f-bf05-4e26-9ca2-5fab1dc955ca_0/0/0/0", + "oid": "1_619ff51f-bf05-4e26-9ca2-5fab1dc955ca_0-0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -2609,7 +2609,7 @@ 0, 0 ], - "loop_ctx": "0/0", + "loop_ctx": "0-0", "weight": 5, "applicationArgs": { "event": { @@ -2835,16 +2835,16 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0/0", + "iid": "0-0-0-0", "lg_key": "619ff51f-bf05-4e26-9ca2-5fab1dc955ca", "consumers": [ { - "1_54d54a36-3dce-4cd1-bdb5-d1868ab79898_0/0/0/0": "relationship" + "1_54d54a36-3dce-4cd1-bdb5-d1868ab79898_0-0-0-0": "relationship" } ], "producers": [ { - "1_cf4f2492-2f60-41e3-b108-a24a32a83fd1_0/0/0/0": "relationship" + "1_cf4f2492-2f60-41e3-b108-a24a32a83fd1_0-0-0-0": "relationship" } ], "port_map": { @@ -2852,7 +2852,7 @@ } }, { - "oid": "1_9fa4a1dc-65a8-49ee-8064-efabec01c591_0/0/0/0", + "oid": "1_9fa4a1dc-65a8-49ee-8064-efabec01c591_0-0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -2864,7 +2864,7 @@ 0, 0 ], - "loop_ctx": "0/0", + "loop_ctx": "0-0", "weight": 5, "applicationArgs": { "event": { @@ -3090,11 +3090,11 @@ "group_end": "1", "event": "", "relationship": "", - "iid": "0/0/0/0", + "iid": "0-0-0-0", "lg_key": "9fa4a1dc-65a8-49ee-8064-efabec01c591", "producers": [ { - "1_54d54a36-3dce-4cd1-bdb5-d1868ab79898_0/0/0/0": "relationship" + "1_54d54a36-3dce-4cd1-bdb5-d1868ab79898_0-0-0-0": "relationship" } ], "port_map": { @@ -3102,12 +3102,12 @@ }, "consumers": [ { - "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0/0/0": "relationship" + "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0-0-0": "relationship" } ] }, { - "oid": "1_cf4f2492-2f60-41e3-b108-a24a32a83fd1_0/0/0/0", + "oid": "1_cf4f2492-2f60-41e3-b108-a24a32a83fd1_0-0-0-0", "name": "Identify Component", "categoryType": "Application", "category": "PythonApp", @@ -3119,7 +3119,7 @@ 0, 0 ], - "loop_ctx": "0/0", + "loop_ctx": "0-0", "weight": 5, "num_cpus": 1, "applicationArgs": { @@ -3345,21 +3345,21 @@ "execution_time": 5, "group_start": false, "relationship": "", - "iid": "0/0/0/0", + "iid": "0-0-0-0", "lg_key": "cf4f2492-2f60-41e3-b108-a24a32a83fd1", "inputs": [ { - "1_483daa57-023c-40e9-a7de-1178e4339d36_0/0/0/0": "relationship" + "1_483daa57-023c-40e9-a7de-1178e4339d36_0-0-0-0": "relationship" } ], "outputs": [ { - "1_619ff51f-bf05-4e26-9ca2-5fab1dc955ca_0/0/0/0": "relationship" + "1_619ff51f-bf05-4e26-9ca2-5fab1dc955ca_0-0-0-0": "relationship" } ] }, { - "oid": "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0/0/0", + "oid": "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0-0-0", "name": "FinishMajorCycle", "categoryType": "Application", "category": "PythonApp", @@ -3627,24 +3627,24 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "e6b346f8-c5fa-4f47-8b80-2472c7b735e4", "inputs": [ { - "1_9fa4a1dc-65a8-49ee-8064-efabec01c591_0/0/0/0": "relationship" + "1_9fa4a1dc-65a8-49ee-8064-efabec01c591_0-0-0-0": "relationship" }, { - "1_12a28856-2332-4fc3-b8f8-4b666c1f8a94_0/0/0": "relationship" + "1_12a28856-2332-4fc3-b8f8-4b666c1f8a94_0-0-0": "relationship" } ], "outputs": [ { - "1_280153f9-1ce2-4644-8e51-1c01f048cf4e_0/0/0": "relationship" + "1_280153f9-1ce2-4644-8e51-1c01f048cf4e_0-0-0": "relationship" } ] }, { - "oid": "1_839d42e5-e581-46d5-8d71-5ff536a8bb30_0/0/0", + "oid": "1_839d42e5-e581-46d5-8d71-5ff536a8bb30_0-0-0", "name": "BeginMajorCycle", "categoryType": "Application", "category": "PythonApp", @@ -3912,21 +3912,21 @@ "group_start": "1", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "839d42e5-e581-46d5-8d71-5ff536a8bb30", "outputs": [ { - "1_d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4_0/0/0": "relationship" + "1_d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4_0-0-0": "relationship" } ], "inputs": [ { - "1_50207c98-b5e4-42b1-9177-a9f60762e462_0/0": "relationship" + "1_50207c98-b5e4-42b1-9177-a9f60762e462_0-0": "relationship" } ] }, { - "oid": "1_f134c465-1899-4fa6-bf27-0d5c1bf82284_0/0/0", + "oid": "1_f134c465-1899-4fa6-bf27-0d5c1bf82284_0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -4163,11 +4163,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "f134c465-1899-4fa6-bf27-0d5c1bf82284", "producers": [ { - "1_fd69889f-56eb-4f20-b3e9-ac688e7fe420_0/0/0": "relationship" + "1_fd69889f-56eb-4f20-b3e9-ac688e7fe420_0-0-0": "relationship" } ], "port_map": { @@ -4175,12 +4175,12 @@ }, "consumers": [ { - "1_b083dede-5c79-4500-84b5-1cbaeb811e8c_0/0/0": "relationship" + "1_b083dede-5c79-4500-84b5-1cbaeb811e8c_0-0-0": "relationship" } ] }, { - "oid": "1_1b974210-c1b5-41f8-9f5b-647b2bdb39bb_0/0/0", + "oid": "1_1b974210-c1b5-41f8-9f5b-647b2bdb39bb_0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -4417,16 +4417,16 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "1b974210-c1b5-41f8-9f5b-647b2bdb39bb", "consumers": [ { - "1_0e094334-117b-48e1-a48d-b9e086a9cc88_0/0/0": "relationship" + "1_0e094334-117b-48e1-a48d-b9e086a9cc88_0-0-0": "relationship" } ], "producers": [ { - "1_b083dede-5c79-4500-84b5-1cbaeb811e8c_0/0/0": "relationship" + "1_b083dede-5c79-4500-84b5-1cbaeb811e8c_0-0-0": "relationship" } ], "port_map": { @@ -4434,7 +4434,7 @@ } }, { - "oid": "1_0bd1aa81-d572-485f-b5ec-8234b471e935_0/0/0", + "oid": "1_0bd1aa81-d572-485f-b5ec-8234b471e935_0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -4671,11 +4671,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "0bd1aa81-d572-485f-b5ec-8234b471e935", "producers": [ { - "1_0e094334-117b-48e1-a48d-b9e086a9cc88_0/0/0": "relationship" + "1_0e094334-117b-48e1-a48d-b9e086a9cc88_0-0-0": "relationship" } ], "port_map": { @@ -4683,12 +4683,12 @@ }, "consumers": [ { - "1_af8580b3-a5c1-4c70-8910-f886f7de83df_0/0/0": "relationship" + "1_af8580b3-a5c1-4c70-8910-f886f7de83df_0-0-0": "relationship" } ] }, { - "oid": "1_d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4_0/0/0", + "oid": "1_d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4_0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -4925,11 +4925,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "d018c8e2-9d9b-45b8-8ed5-3d12d2bce9c4", "producers": [ { - "1_839d42e5-e581-46d5-8d71-5ff536a8bb30_0/0/0": "relationship" + "1_839d42e5-e581-46d5-8d71-5ff536a8bb30_0-0-0": "relationship" } ], "port_map": { @@ -4937,12 +4937,12 @@ }, "consumers": [ { - "1_fd69889f-56eb-4f20-b3e9-ac688e7fe420_0/0/0": "relationship" + "1_fd69889f-56eb-4f20-b3e9-ac688e7fe420_0-0-0": "relationship" } ] }, { - "oid": "1_12a28856-2332-4fc3-b8f8-4b666c1f8a94_0/0/0", + "oid": "1_12a28856-2332-4fc3-b8f8-4b666c1f8a94_0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -5179,11 +5179,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "12a28856-2332-4fc3-b8f8-4b666c1f8a94", "producers": [ { - "1_af8580b3-a5c1-4c70-8910-f886f7de83df_0/0/0": "relationship" + "1_af8580b3-a5c1-4c70-8910-f886f7de83df_0-0-0": "relationship" } ], "port_map": { @@ -5191,12 +5191,12 @@ }, "consumers": [ { - "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0/0/0": "relationship" + "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0-0-0": "relationship" } ] }, { - "oid": "1_280153f9-1ce2-4644-8e51-1c01f048cf4e_0/0/0", + "oid": "1_280153f9-1ce2-4644-8e51-1c01f048cf4e_0-0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -5433,11 +5433,11 @@ "group_end": "1", "event": "", "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "280153f9-1ce2-4644-8e51-1c01f048cf4e", "producers": [ { - "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0/0/0": "relationship" + "1_e6b346f8-c5fa-4f47-8b80-2472c7b735e4_0-0-0": "relationship" } ], "port_map": { @@ -5445,12 +5445,12 @@ }, "consumers": [ { - "1_64e5556e-d94b-4dde-a1bd-f7425e91b69e_0/0": "relationship" + "1_64e5556e-d94b-4dde-a1bd-f7425e91b69e_0-0": "relationship" } ] }, { - "oid": "1_b083dede-5c79-4500-84b5-1cbaeb811e8c_0/0/0", + "oid": "1_b083dede-5c79-4500-84b5-1cbaeb811e8c_0-0-0", "name": "Subtract", "categoryType": "Application", "category": "PythonApp", @@ -5687,21 +5687,21 @@ "execution_time": 5, "group_start": false, "relationship": "", - "iid": "0/0/0", + "iid": "0-0-0", "lg_key": "b083dede-5c79-4500-84b5-1cbaeb811e8c", "inputs": [ { - "1_f134c465-1899-4fa6-bf27-0d5c1bf82284_0/0/0": "relationship" + "1_f134c465-1899-4fa6-bf27-0d5c1bf82284_0-0-0": "relationship" } ], "outputs": [ { - "1_1b974210-c1b5-41f8-9f5b-647b2bdb39bb_0/0/0": "relationship" + "1_1b974210-c1b5-41f8-9f5b-647b2bdb39bb_0-0-0": "relationship" } ] }, { - "oid": "1_64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad_0/0", + "oid": "1_64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad_0-0", "name": "Source Find", "categoryType": "Application", "category": "PythonApp", @@ -5968,21 +5968,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad", "inputs": [ { - "1_0d1ca4cf-4993-46ba-a667-9f1c43629610_0/0": "relationship" + "1_0d1ca4cf-4993-46ba-a667-9f1c43629610_0-0": "relationship" } ], "outputs": [ { - "1_ea2d6979-1e2c-47b3-b33b-d965bea2cf87_0/0": "relationship" + "1_ea2d6979-1e2c-47b3-b33b-d965bea2cf87_0-0": "relationship" } ] }, { - "oid": "1_e022f724-ea81-4ad7-aba1-22302890da17_0/0", + "oid": "1_e022f724-ea81-4ad7-aba1-22302890da17_0-0", "name": "UpdateLSM", "categoryType": "Application", "category": "PythonApp", @@ -6249,21 +6249,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "e022f724-ea81-4ad7-aba1-22302890da17", "inputs": [ { - "1_ea2d6979-1e2c-47b3-b33b-d965bea2cf87_0/0": "relationship" + "1_ea2d6979-1e2c-47b3-b33b-d965bea2cf87_0-0": "relationship" } ], "outputs": [ { - "1_7abdde30-9873-41b7-8d2b-dda58fcb0c21_0/0": "relationship" + "1_7abdde30-9873-41b7-8d2b-dda58fcb0c21_0-0": "relationship" } ] }, { - "oid": "1_adb8c03a-64c6-49e6-adfb-de7e9c6dfc90_0/0", + "oid": "1_adb8c03a-64c6-49e6-adfb-de7e9c6dfc90_0-0", "name": "Predict", "categoryType": "Application", "category": "PythonApp", @@ -6530,21 +6530,21 @@ "group_start": "1", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "adb8c03a-64c6-49e6-adfb-de7e9c6dfc90", "outputs": [ { - "1_e7990302-79e9-477d-81d0-7f42c4646a9d_0/0": "relationship" + "1_e7990302-79e9-477d-81d0-7f42c4646a9d_0-0": "relationship" } ], "inputs": [ { - "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0/0": "event" + "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0-0": "event" } ] }, { - "oid": "1_95565872-54e4-405d-ae94-693d68736c2a_0/0", + "oid": "1_95565872-54e4-405d-ae94-693d68736c2a_0-0", "name": "Predict", "categoryType": "Application", "category": "PythonApp", @@ -6811,21 +6811,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "95565872-54e4-405d-ae94-693d68736c2a", "outputs": [ { - "1_eb642bb6-4c9f-4c50-82fe-c2a426092faf_0/0": "relationship" + "1_eb642bb6-4c9f-4c50-82fe-c2a426092faf_0-0": "relationship" } ], "inputs": [ { - "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0/0": "event" + "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0-0": "event" } ] }, { - "oid": "1_f117c000-344c-4c25-82c7-278cfe9917b2_0/0", + "oid": "1_f117c000-344c-4c25-82c7-278cfe9917b2_0-0", "name": "Correct", "categoryType": "Application", "category": "PythonApp", @@ -7061,21 +7061,21 @@ "execution_time": "5", "group_start": "0", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "f117c000-344c-4c25-82c7-278cfe9917b2", "inputs": [ { - "1_f5d4a8db-73a0-4d0b-b415-50650fa6ee80_0/0": "relationship" + "1_f5d4a8db-73a0-4d0b-b415-50650fa6ee80_0-0": "relationship" } ], "outputs": [ { - "1_139487cf-812a-45ea-81b7-331b4434593c_0/0": "relationship" + "1_139487cf-812a-45ea-81b7-331b4434593c_0-0": "relationship" } ] }, { - "oid": "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0/0", + "oid": "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0-0", "name": "Flag", "categoryType": "Application", "category": "PythonApp", @@ -7342,24 +7342,24 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "86d8a3ba-0466-4a19-9789-22f92b715cc7", "inputs": [ { - "1_551b24b5-5588-4c96-a587-efdce178f56c_0/0": "relationship" + "1_551b24b5-5588-4c96-a587-efdce178f56c_0-0": "relationship" }, { - "1_db25a20b-a55a-4a62-88d3-ecd260519414_0/0": "relationship" + "1_db25a20b-a55a-4a62-88d3-ecd260519414_0-0": "relationship" } ], "outputs": [ { - "1_50207c98-b5e4-42b1-9177-a9f60762e462_0/0": "relationship" + "1_50207c98-b5e4-42b1-9177-a9f60762e462_0-0": "relationship" } ] }, { - "oid": "1_64e5556e-d94b-4dde-a1bd-f7425e91b69e_0/0", + "oid": "1_64e5556e-d94b-4dde-a1bd-f7425e91b69e_0-0", "name": "Image Spectral Fitting", "categoryType": "Application", "category": "PythonApp", @@ -7626,21 +7626,21 @@ "group_start": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "64e5556e-d94b-4dde-a1bd-f7425e91b69e", "inputs": [ { - "1_280153f9-1ce2-4644-8e51-1c01f048cf4e_0/0/0": "relationship" + "1_280153f9-1ce2-4644-8e51-1c01f048cf4e_0-0-0": "relationship" } ], "outputs": [ { - "1_0d1ca4cf-4993-46ba-a667-9f1c43629610_0/0": "relationship" + "1_0d1ca4cf-4993-46ba-a667-9f1c43629610_0-0": "relationship" } ] }, { - "oid": "1_e7990302-79e9-477d-81d0-7f42c4646a9d_0/0", + "oid": "1_e7990302-79e9-477d-81d0-7f42c4646a9d_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -7876,11 +7876,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "e7990302-79e9-477d-81d0-7f42c4646a9d", "producers": [ { - "1_adb8c03a-64c6-49e6-adfb-de7e9c6dfc90_0/0": "relationship" + "1_adb8c03a-64c6-49e6-adfb-de7e9c6dfc90_0-0": "relationship" } ], "port_map": { @@ -7888,12 +7888,12 @@ }, "consumers": [ { - "1_229692c1-e068-4db9-aec1-e2e11d67bdee_0/0": "relationship" + "1_229692c1-e068-4db9-aec1-e2e11d67bdee_0-0": "relationship" } ] }, { - "oid": "1_f5d4a8db-73a0-4d0b-b415-50650fa6ee80_0/0", + "oid": "1_f5d4a8db-73a0-4d0b-b415-50650fa6ee80_0-0", "name": "relationship", "categoryType": "Data", "category": "File", @@ -8222,11 +8222,11 @@ "dirname": "", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "f5d4a8db-73a0-4d0b-b415-50650fa6ee80", "producers": [ { - "1_229692c1-e068-4db9-aec1-e2e11d67bdee_0/0": "relationship" + "1_229692c1-e068-4db9-aec1-e2e11d67bdee_0-0": "relationship" } ], "port_map": { @@ -8234,12 +8234,12 @@ }, "consumers": [ { - "1_f117c000-344c-4c25-82c7-278cfe9917b2_0/0": "relationship" + "1_f117c000-344c-4c25-82c7-278cfe9917b2_0-0": "relationship" } ] }, { - "oid": "1_139487cf-812a-45ea-81b7-331b4434593c_0/0", + "oid": "1_139487cf-812a-45ea-81b7-331b4434593c_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -8475,11 +8475,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "139487cf-812a-45ea-81b7-331b4434593c", "producers": [ { - "1_f117c000-344c-4c25-82c7-278cfe9917b2_0/0": "relationship" + "1_f117c000-344c-4c25-82c7-278cfe9917b2_0-0": "relationship" } ], "port_map": { @@ -8487,12 +8487,12 @@ }, "consumers": [ { - "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0/0": "relationship" + "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0-0": "relationship" } ] }, { - "oid": "1_eb642bb6-4c9f-4c50-82fe-c2a426092faf_0/0", + "oid": "1_eb642bb6-4c9f-4c50-82fe-c2a426092faf_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -8728,11 +8728,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "eb642bb6-4c9f-4c50-82fe-c2a426092faf", "producers": [ { - "1_95565872-54e4-405d-ae94-693d68736c2a_0/0": "relationship" + "1_95565872-54e4-405d-ae94-693d68736c2a_0-0": "relationship" } ], "port_map": { @@ -8740,12 +8740,12 @@ }, "consumers": [ { - "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0/0": "relationship" + "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0-0": "relationship" } ] }, { - "oid": "1_551b24b5-5588-4c96-a587-efdce178f56c_0/0", + "oid": "1_551b24b5-5588-4c96-a587-efdce178f56c_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -8981,16 +8981,16 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "551b24b5-5588-4c96-a587-efdce178f56c", "consumers": [ { - "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0/0": "relationship" + "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0-0": "relationship" } ] }, { - "oid": "1_50207c98-b5e4-42b1-9177-a9f60762e462_0/0", + "oid": "1_50207c98-b5e4-42b1-9177-a9f60762e462_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -9226,11 +9226,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "50207c98-b5e4-42b1-9177-a9f60762e462", "producers": [ { - "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0/0": "relationship" + "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0-0": "relationship" } ], "port_map": { @@ -9238,15 +9238,15 @@ }, "consumers": [ { - "1_839d42e5-e581-46d5-8d71-5ff536a8bb30_0/0/0": "relationship" + "1_839d42e5-e581-46d5-8d71-5ff536a8bb30_0-0-0": "relationship" }, { - "1_39a1a3a6-5c56-4c14-ab47-022d07b25197_0/0/0/0": "relationship" + "1_39a1a3a6-5c56-4c14-ab47-022d07b25197_0-0-0-0": "relationship" } ] }, { - "oid": "1_0d1ca4cf-4993-46ba-a667-9f1c43629610_0/0", + "oid": "1_0d1ca4cf-4993-46ba-a667-9f1c43629610_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -9482,11 +9482,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "0d1ca4cf-4993-46ba-a667-9f1c43629610", "producers": [ { - "1_64e5556e-d94b-4dde-a1bd-f7425e91b69e_0/0": "relationship" + "1_64e5556e-d94b-4dde-a1bd-f7425e91b69e_0-0": "relationship" } ], "port_map": { @@ -9494,12 +9494,12 @@ }, "consumers": [ { - "1_64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad_0/0": "relationship" + "1_64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad_0-0": "relationship" } ] }, { - "oid": "1_ea2d6979-1e2c-47b3-b33b-d965bea2cf87_0/0", + "oid": "1_ea2d6979-1e2c-47b3-b33b-d965bea2cf87_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -9735,11 +9735,11 @@ "group_end": "0", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "ea2d6979-1e2c-47b3-b33b-d965bea2cf87", "producers": [ { - "1_64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad_0/0": "relationship" + "1_64b9adf8-3e28-4fcb-b930-5cdc7ccfdfad_0-0": "relationship" } ], "port_map": { @@ -9747,12 +9747,12 @@ }, "consumers": [ { - "1_e022f724-ea81-4ad7-aba1-22302890da17_0/0": "relationship" + "1_e022f724-ea81-4ad7-aba1-22302890da17_0-0": "relationship" } ] }, { - "oid": "1_7abdde30-9873-41b7-8d2b-dda58fcb0c21_0/0", + "oid": "1_7abdde30-9873-41b7-8d2b-dda58fcb0c21_0-0", "name": "relationship", "categoryType": "Data", "category": "File", @@ -10081,11 +10081,11 @@ "dirname": "", "event": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "7abdde30-9873-41b7-8d2b-dda58fcb0c21", "producers": [ { - "1_e022f724-ea81-4ad7-aba1-22302890da17_0/0": "relationship" + "1_e022f724-ea81-4ad7-aba1-22302890da17_0-0": "relationship" } ], "port_map": { @@ -10093,12 +10093,12 @@ }, "consumers": [ { - "1_2be73cd7-a38d-4053-9262-41d25ee1077a_0/0": "relationship" + "1_2be73cd7-a38d-4053-9262-41d25ee1077a_0-0": "relationship" } ] }, { - "oid": "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0/0", + "oid": "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0-0", "name": "Subtract", "categoryType": "Application", "category": "PythonApp", @@ -10334,24 +10334,24 @@ "execution_time": 5, "group_start": false, "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "dfaf2ec3-f447-488c-b7f7-1025cd458803", "inputs": [ { - "1_139487cf-812a-45ea-81b7-331b4434593c_0/0": "relationship" + "1_139487cf-812a-45ea-81b7-331b4434593c_0-0": "relationship" }, { - "1_eb642bb6-4c9f-4c50-82fe-c2a426092faf_0/0": "relationship" + "1_eb642bb6-4c9f-4c50-82fe-c2a426092faf_0-0": "relationship" } ], "outputs": [ { - "1_db25a20b-a55a-4a62-88d3-ecd260519414_0/0": "relationship" + "1_db25a20b-a55a-4a62-88d3-ecd260519414_0-0": "relationship" } ] }, { - "oid": "1_db25a20b-a55a-4a62-88d3-ecd260519414_0/0", + "oid": "1_db25a20b-a55a-4a62-88d3-ecd260519414_0-0", "name": "relationship", "categoryType": "Data", "category": "Memory", @@ -10556,11 +10556,11 @@ "data_volume": 5, "group_end": false, "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "db25a20b-a55a-4a62-88d3-ecd260519414", "producers": [ { - "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0/0": "relationship" + "1_dfaf2ec3-f447-488c-b7f7-1025cd458803_0-0": "relationship" } ], "port_map": { @@ -10568,12 +10568,12 @@ }, "consumers": [ { - "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0/0": "relationship" + "1_86d8a3ba-0466-4a19-9789-22f92b715cc7_0-0": "relationship" } ] }, { - "oid": "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0/0", + "oid": "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0-0", "name": "event", "categoryType": "Data", "category": "Memory", @@ -10778,7 +10778,7 @@ "data_volume": 5, "group_end": false, "event": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "5bd6ea0f-ebff-4083-a26c-69938c1f1361", "producers": [ { @@ -10790,15 +10790,15 @@ }, "consumers": [ { - "1_adb8c03a-64c6-49e6-adfb-de7e9c6dfc90_0/0": "event" + "1_adb8c03a-64c6-49e6-adfb-de7e9c6dfc90_0-0": "event" }, { - "1_95565872-54e4-405d-ae94-693d68736c2a_0/0": "event" + "1_95565872-54e4-405d-ae94-693d68736c2a_0-0": "event" } ] }, { - "oid": "1_0ac0d699-1f66-4aba-a2d4-b9289c69ed32_0/0", + "oid": "1_0ac0d699-1f66-4aba-a2d4-b9289c69ed32_0-0", "name": "Memory", "categoryType": "Data", "category": "Memory", @@ -11034,22 +11034,22 @@ "group_end": false, "output": "", "relationship": "", - "iid": "0/0", + "iid": "0-0", "lg_key": "0ac0d699-1f66-4aba-a2d4-b9289c69ed32", "producers": [ { - "1_2be73cd7-a38d-4053-9262-41d25ee1077a_0/0": "output" + "1_2be73cd7-a38d-4053-9262-41d25ee1077a_0-0": "output" } ], "port_map": { "output": "output" }, "consumers": [ - "1_f27a9a58-b1ae-4c87-a0c6-a484e14c33b7_0/0" + "1_f27a9a58-b1ae-4c87-a0c6-a484e14c33b7_0-0" ] }, { - "oid": "1_f27a9a58-b1ae-4c87-a0c6-a484e14c33b7_0/0", + "oid": "1_f27a9a58-b1ae-4c87-a0c6-a484e14c33b7_0-0", "name": "Gather", "categoryType": "Application", "category": "PythonApp", @@ -11317,10 +11317,10 @@ "streaming": false, "num_of_inputs": 1, "gather_axis": "frequency", - "iid": "0/0", + "iid": "0-0", "lg_key": "f27a9a58-b1ae-4c87-a0c6-a484e14c33b7", "inputs": [ - "1_0ac0d699-1f66-4aba-a2d4-b9289c69ed32_0/0" + "1_0ac0d699-1f66-4aba-a2d4-b9289c69ed32_0-0" ] }, { @@ -11600,7 +11600,7 @@ ], "outputs": [ { - "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0/0": "event" + "1_5bd6ea0f-ebff-4083-a26c-69938c1f1361_0-0": "event" } ] }, diff --git a/tests/test_workflow_generation.py b/tests/test_workflow_generation.py index 9b17869..aaea5e6 100644 --- a/tests/test_workflow_generation.py +++ b/tests/test_workflow_generation.py @@ -71,9 +71,11 @@ def test_lgt_to_pgt_nofileoutput(self): result = edt.unroll_logical_graph( 'tests/data/eagle_lgt_scatter_minimal.graph') jdict = json.loads(result) + generated_oids = [d.get('oid') for d in jdict] with open('tests/data/daliuge_scatter_minimal.json') as f: test_dict = json.load(f) - self.assertListEqual(test_dict, jdict) + test_oids = [d.get('oid') for d in test_dict] + self.assertListEqual(test_oids, generated_oids) def test_lgt_to_pgt_with_channel_update(self): number_channels = 4