Files
galaxy/test/unit/tools/test_tool_dependency_description.py
T
John Chilton 939e7774a8 Create galaxy-tool-util package.
This is (so far a subset of) the tool utilities from galaxy-lib. galaxy-lib mocked out a fake galaxy.tools to allow these to all exist below the galaxy.tools - but this was a terrible hack - in order for the new packages to be true subsets of Galaxy they need to be refactored into a new package that doesn't depend on models, SA, galaxy.jobs, etc...

[x] galaxy.tools.deps -> galaxy.tool_util.deps
[x] galaxy.tools.loader -> galaxy.tool_util.loader
[x] galaxy.tools.cwl -> galaxy.tool_util.cwl
[x] galaxy.tools.loader -> galaxy.tool_util.loader
[x] galaxy.tools.fetcher -> galaxy.tool_util.fetcher
[x] galaxy.tools.locations -> galaxy.tool_util.locations
[x] galaxy.tools.parser -> galaxy.tool_util.parser
2019-05-16 16:45:25 -04:00

46 lines
1.6 KiB
Python

from galaxy.model import tool_shed_install
from galaxy.tool_util.deps import (
dependencies,
requirements
)
def test_serialization():
repository = tool_shed_install.ToolShedRepository(
owner="devteam",
name="tophat",
installed_changeset_revision="abcdefghijk",
)
dependency = tool_shed_install.ToolDependency(
name="tophat",
version="2.0",
type="package",
status=tool_shed_install.ToolDependency.installation_status.INSTALLED,
)
dependency.tool_shed_repository = repository
tool_requirement = requirements.ToolRequirement(
name="tophat",
version="2.0",
type="package",
)
descript = dependencies.DependenciesDescription(
requirements=[tool_requirement],
installed_tool_dependencies=[dependency],
)
result_descript = dependencies.DependenciesDescription.from_dict(
descript.to_dict()
)
result_requirement = result_descript.requirements[0]
assert result_requirement.name == "tophat"
assert result_requirement.version == "2.0"
assert result_requirement.type == "package"
result_tool_shed_dependency = list(result_descript.installed_tool_dependencies)[0]
result_tool_shed_dependency.name = "tophat"
result_tool_shed_dependency.version = "2.0"
result_tool_shed_dependency.type = "package"
result_tool_shed_repository = result_tool_shed_dependency.tool_shed_repository
result_tool_shed_repository.name = "tophat"
result_tool_shed_repository.owner = "devteam"
result_tool_shed_repository.installed_changeset_revision = "abcdefghijk"