GitHub user haouech opened a pull request:
https://github.com/apache/incubator-taverna-language/pull/38
Cwlparser
This is a pull request that adds structural import for a CWL workflow to
Apache Taverna.
The current code parses the cwl file to extract inputs, outputs and steps
of a workflow, and then converts them to a Taverna workflow containing ports,
processors and data links.
In the tests, we try to compare expected objects (like InputWorkflowPort)
with the newly created workflow from the cwl file. We do this by using the
default equality of Taverna components (Implemented inside AbstractNamed class)
but this way we try to compare the name and the parent of two objects.
Currently, we set the parent of the expected object to be the same as the
parent of the created object, but this will modify the parent as well to point
to the same object in the end and thus we'll have two equal objects all the
time.
What we can do is set objects' parents to null before comparing and in that
way we will compare the names and not the parents.
Is there another approach or is the current one correct?
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/haouech/incubator-taverna-language cwlparser
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-taverna-language/pull/38.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #38
----
commit 309109286ee0ef07c5744de67c3f83463eb6713b
Author: Majdi Haouech <m.haouech@...>
Date: 2018-05-21T13:26:57Z
First commit, Add YAML file parser
commit 252e3d8b11914b16a8212ef86d1cf435017209fe
Author: Majdi Haouech <m.haouech@...>
Date: 2018-05-21T13:29:02Z
Add helper functions
commit 4d32489097c032f9a6c0786af2f033767811acc3
Author: Majdi Haouech <m.haouech@...>
Date: 2018-05-21T13:37:15Z
Parse inputs, add tests
commit ecc3b6729c0dccfe0943475b3207c255b1bb3cb1
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-04T09:33:03Z
Add CWL components
commit 6d6dc20086ca9b8e0f1c0ff0eccd9b58b936e452
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-04T09:33:46Z
Add CWL Parser, import helper from common activities
commit ba2941396dd0bc724d40d9b73589575aca246677
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-04T09:38:01Z
Add jackson and snackyaml dependencies
commit ee6b282edad17a1095af7a3c6a885c383ca71ee5
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-04T09:38:37Z
Add dummy test and workflow example
commit 881a409608e4fd8d6b820b8e9e54f1eb5e3c6d16
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-11T14:51:06Z
Split CWL parser and converter
commit 4ee2f5bc021c236aea248b0917a57d00b4d6ae66
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-11T14:52:26Z
Add main parser that parses the structure of a CWL workflow
commit 62c3615bf2bbd4a50d6bc864b399bfeb4064743d
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-11T14:53:09Z
Add parser tests
commit 289583c8e692d7531ca853a354eaeb6be0948c15
Author: Majdi Haouech <m.haouech@...>
Date: 2018-06-11T15:01:24Z
Fix wild card imports
----
---