Skip to content

Commit 2616a09

Browse files
committed
#44: adding tests for github actions
1 parent f560c25 commit 2616a09

3 files changed

Lines changed: 19 additions & 3 deletions

File tree

tests/unit/test_workflow.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,15 @@
88
# the Free Software Foundation, either version 3 of the License, or
99
# (at your option) any later version.
1010

11+
import pathlib
1112
import pytest
1213

1314
from wfcommons.common import Task, Workflow
1415
from wfcommons.version import __version__, __schema_version__
1516

1617

1718
tasks_list = [
19+
([Task(name="task_1", task_id="task_1", runtime=15.0)]),
1820
([Task(name="task_1", task_id="task_1", runtime=15.0), Task(name="task_2", task_id="task_2", runtime=30.0)]),
1921
([Task(name="task_1", task_id="task_1", runtime=15.0), Task(name="task_2", task_id="task_2", runtime=30.0), Task(name="task_3", task_id="task_3", runtime=60.0)]),
2022
]
@@ -31,7 +33,7 @@ def workflow(self) -> Workflow:
3133

3234
@pytest.mark.unit
3335
def test_workflow_creation(self, workflow: Workflow) -> None:
34-
workflow.write_json("/tmp/workflow_test.json")
36+
workflow.write_json(pathlib.Path("/tmp/workflow_test.json"))
3537

3638
workflow_json = {
3739
"name": "Workflow Test",
@@ -95,4 +97,15 @@ def test_workflow_add_dependencies_leaves(self, workflow: Workflow, tasks: list[
9597
if previous_task:
9698
workflow.add_dependency(previous_task.task_id, task.task_id)
9799
previous_task = task
98-
assert(workflow.leaves() == [previous_task.task_id])
100+
assert(workflow.leaves() == [previous_task.task_id])
101+
102+
@pytest.mark.unit
103+
def test_dot(self, workflow: Workflow) -> None:
104+
dot_file_path = pathlib.Path("/tmp/workflow_test.dot")
105+
workflow.add_task(Task(name="task_1", task_id="task_1", runtime=15.0))
106+
workflow.add_task(Task(name="task_2", task_id="task_2", runtime=30.0))
107+
workflow.add_dependency("task_1", "task_2")
108+
workflow.write_dot(dot_file_path)
109+
dot_workflow = Workflow("workflow")
110+
dot_workflow.read_dot(dot_file_path)
111+
# assert(workflow == dot_workflow)

wfcommons/common/task.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,6 @@ def execution_as_dict(self) -> Dict:
174174
if self.launch_dir:
175175
task_obj['launchDir'] = self.launch_dir
176176
return task_obj
177+
178+
def __str__(self) -> str:
179+
return self.task_id

wfcommons/common/workflow.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ def add_task(self, task: Task) -> None:
9494
self.tasks[task.task_id] = task
9595
self.tasks_parents.setdefault(task.task_id, set())
9696
self.tasks_children.setdefault(task.task_id, set())
97-
self.add_node(task.task_id, task=task)
97+
self.add_node(task.task_id, task=task, label=task.task_id)
9898

9999
def add_dependency(self, parent: str, child: str) -> None:
100100
"""

0 commit comments

Comments
 (0)