Exemplo n.º 1
0
    def test_add_celery_group(self, some_sigs):
        wf = Workflow()
        sigs = some_sigs

        group = celery_canvas.group(sigs[:4])
        dependencies = [
            wf.add_signature(sigs[-2]),
            wf.add_signature(sigs[-1]),
        ]
        res = wf.add_celery_group(group, dependencies)
        assert set(res) == set([
            wf.nodes['task-0'],
            wf.nodes['task-1'],
            wf.nodes['task-2'],
            wf.nodes['task-3'],
        ])
        # use build_dependency_asserts(wf) to regenerate
        # build_dependency_asserts(wf)
        assert "task-8" in wf.nodes["task-0"].dependencies  # noqa
        assert "task-9" in wf.nodes["task-0"].dependencies  # noqa
        assert "task-8" in wf.nodes["task-1"].dependencies  # noqa
        assert "task-9" in wf.nodes["task-1"].dependencies  # noqa
        assert "task-8" in wf.nodes["task-2"].dependencies  # noqa
        assert "task-9" in wf.nodes["task-2"].dependencies  # noqa
        assert "task-8" in wf.nodes["task-3"].dependencies  # noqa
        assert "task-9" in wf.nodes["task-3"].dependencies  # noqa
        assert wf.nodes["task-8"].dependencies == {}  # noqa
        assert wf.nodes["task-9"].dependencies == {}  # noqa
Exemplo n.º 2
0
    def test_add_celery_chain(self, some_sigs):
        wf = Workflow()
        sigs = some_sigs

        chain = celery_canvas.chain(sigs[:-2])
        dependencies = [
            wf.add_signature(sigs[-2]),
            wf.add_signature(sigs[-1]),
        ]
        res = wf.add_celery_chain(chain, dependencies)

        assert res == [wf.nodes[sigs[-3].id]]

        # use build_dependency_asserts(wf) to regenerate
        # build_dependency_asserts(wf)
        assert "task-8" in wf.nodes["task-0"].dependencies  # noqa
        assert "task-9" in wf.nodes["task-0"].dependencies  # noqa
        assert "task-0" in wf.nodes["task-1"].dependencies  # noqa
        assert "task-1" in wf.nodes["task-2"].dependencies  # noqa
        assert "task-2" in wf.nodes["task-3"].dependencies  # noqa
        assert "task-3" in wf.nodes["task-4"].dependencies  # noqa
        assert "task-4" in wf.nodes["task-5"].dependencies  # noqa
        assert "task-5" in wf.nodes["task-6"].dependencies  # noqa
        assert "task-6" in wf.nodes["task-7"].dependencies  # noqa
        assert wf.nodes["task-8"].dependencies == {}  # noqa
        assert wf.nodes["task-9"].dependencies == {}  # noqa