Allow connecting ExpressionTool outputs to inputs of correct type

This means we can now connect these tools in the workflow editor.
This commit is contained in:
mvdbeek
2019-03-20 12:55:04 +01:00
parent 552942fca9
commit 5e8cbcd5b4
2 changed files with 6 additions and 1 deletions
+4
View File
@@ -45,6 +45,7 @@ from galaxy.tools.parameters.basic import (
)
from galaxy.tools.parameters.history_query import HistoryQuery
from galaxy.tools.parameters.wrapped import make_dict_copy
from galaxy.tools.parser.output_objects import ToolExpressionOutput
from galaxy.util.bunch import Bunch
from galaxy.util.json import safe_loads
from galaxy.util.odict import odict
@@ -937,6 +938,8 @@ class ToolModule(WorkflowModule):
if filter_output(tool_output, self.state.inputs):
continue
extra_kwds = {}
if isinstance(tool_output, ToolExpressionOutput):
extra_kwds['parameter'] = True
if tool_output.collection:
extra_kwds["collection"] = True
collection_type = tool_output.structure.collection_type
@@ -973,6 +976,7 @@ class ToolModule(WorkflowModule):
dict(
name=name,
extensions=formats,
type=tool_output.output_type,
**extra_kwds
)
)
+2 -1
View File
@@ -452,7 +452,8 @@ def __mock_tool(
format_source=None,
change_format=[],
filters=[],
label=None)},
label=None,
output_type='data')},
params_from_strings=mock.Mock(),
check_and_update_param_values=mock.Mock(),
to_json=_to_json