Unverified Commit e367b716 authored by John Chilton's avatar John Chilton Committed by GitHub
Browse files

Merge pull request #20164 from mvdbeek/data_collection_parameter_model_factory_fix

[24.2] Fix ``DataCollectionParameterModel`` factory
parents e7d8e66b b99112c3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -194,6 +194,7 @@ def _from_input_source_galaxy(input_source: InputSource, profile: float) -> Tool
            optional = input_source.parse_optional()
            default_value = input_source.parse_default()
            return DataCollectionParameterModel(
                collection_type=input_source.get("collection_type"),
                name=input_source.parse_name(),
                optional=optional,
                value=default_value,
+14 −0
Original line number Diff line number Diff line
<tool id="gx_data_collection_list" name="gx_data_collection_list" version="1.0.0">
    <command><![CDATA[
cat '$parameter' >> '$output'
    ]]></command>
    <inputs>
        <param name="parameter" type="data_collection" collection_type="list" ext="data" />
    </inputs>
    <outputs>
        <data name="output" format="data" />
    </outputs>
    <tests>
        <!-- TODO: -->
    </tests>
</tool>
+12 −0
Original line number Diff line number Diff line
from galaxy.tool_util.models import parse_tool
from galaxy.tool_util.parameters.models import DataCollectionParameterModel
from galaxy.tool_util.parser.factory import get_tool_source
from galaxy.tool_util.unittest_utils import functional_test_tool_path


def test_input_collection_type():
    tool_source = get_tool_source(functional_test_tool_path("parameters/gx_data_collection_list.xml"))
    tool = parse_tool(tool_source)
    tool_input = tool.inputs[0]
    assert isinstance(tool_input, DataCollectionParameterModel)
    assert tool_input.collection_type == "list"