Loading lib/galaxy/workflow/modules.py +2 −2 Original line number Diff line number Diff line Loading @@ -128,9 +128,9 @@ def to_cwl(value, hda_references, step): element_identifier = None if isinstance(value, model.HistoryDatasetCollectionAssociation): value = value.collection if isinstance(value, model.DatasetCollectionElement) and value.hda: if isinstance(value, model.DatasetCollectionElement): element_identifier = value.element_identifier value = value.hda value = value.element_object if isinstance(value, model.HistoryDatasetAssociation): # I think the following two checks are needed but they may # not be needed. Loading test/unit/workflows/test_modules.py +12 −0 Original line number Diff line number Diff line Loading @@ -274,6 +274,18 @@ def test_to_cwl_nested_collection(): assert result["outer"][0]["basename"] == "inner" def test_to_cwl_dataset_collection_element(): hda = model.HistoryDatasetAssociation(create_dataset=True, flush=False) hda.dataset.state = model.Dataset.states.OK dc_inner = model.DatasetCollection(collection_type="list") model.DatasetCollectionElement(collection=dc_inner, element_identifier="inner", element=hda) dc_outer = model.DatasetCollection(collection_type="list:list") dce_outer = model.DatasetCollectionElement(collection=dc_outer, element_identifier="outer", element=dc_inner) result = modules.to_cwl(dce_outer, [], model.WorkflowStep()) assert result[0]["class"] == "File" assert result[0]["basename"] == "inner" class MapOverTestCase(NamedTuple): data_input: str step_input_def: Union[str, List[str]] Loading Loading
lib/galaxy/workflow/modules.py +2 −2 Original line number Diff line number Diff line Loading @@ -128,9 +128,9 @@ def to_cwl(value, hda_references, step): element_identifier = None if isinstance(value, model.HistoryDatasetCollectionAssociation): value = value.collection if isinstance(value, model.DatasetCollectionElement) and value.hda: if isinstance(value, model.DatasetCollectionElement): element_identifier = value.element_identifier value = value.hda value = value.element_object if isinstance(value, model.HistoryDatasetAssociation): # I think the following two checks are needed but they may # not be needed. Loading
test/unit/workflows/test_modules.py +12 −0 Original line number Diff line number Diff line Loading @@ -274,6 +274,18 @@ def test_to_cwl_nested_collection(): assert result["outer"][0]["basename"] == "inner" def test_to_cwl_dataset_collection_element(): hda = model.HistoryDatasetAssociation(create_dataset=True, flush=False) hda.dataset.state = model.Dataset.states.OK dc_inner = model.DatasetCollection(collection_type="list") model.DatasetCollectionElement(collection=dc_inner, element_identifier="inner", element=hda) dc_outer = model.DatasetCollection(collection_type="list:list") dce_outer = model.DatasetCollectionElement(collection=dc_outer, element_identifier="outer", element=dc_inner) result = modules.to_cwl(dce_outer, [], model.WorkflowStep()) assert result[0]["class"] == "File" assert result[0]["basename"] == "inner" class MapOverTestCase(NamedTuple): data_input: str step_input_def: Union[str, List[str]] Loading