Пример #1
0
def test_to_task_dask():
    with warnings.catch_warnings(record=True):
        a = delayed(1, name='a')
        b = delayed(2, name='b')
        task, dask = to_task_dask([a, b, 3])
        assert task == ['a', 'b', 3]

        task, dask = to_task_dask((a, b, 3))
        assert task == (tuple, ['a', 'b', 3])
        assert dict(dask) == merge(a.dask, b.dask)

        task, dask = to_task_dask({a: 1, b: 2})
        assert (task == (dict, [['b', 2], ['a', 1]])
                or task == (dict, [['a', 1], ['b', 2]]))
        assert dict(dask) == merge(a.dask, b.dask)

        f = namedtuple('f', ['x', 'y'])
        x = f(1, 2)
        task, dask = to_task_dask(x)
        assert task == x
        assert dict(dask) == {}

        task, dask = to_task_dask(slice(a, b, 3))
        assert task == (slice, 'a', 'b', 3)
        assert dict(dask) == merge(a.dask, b.dask)

        # Issue https://github.com/dask/dask/issues/2107
        class MyClass(dict):
            pass

        task, dask = to_task_dask(MyClass())
        assert type(task) is MyClass
        assert dict(dask) == {}

        # Custom dask objects
        x = Tuple({'a': 1, 'b': 2, 'c': (add, 'a', 'b')}, ['a', 'b', 'c'])
        task, dask = to_task_dask(x)
        assert task in dask
        f = dask.pop(task)
        assert f == (tuple, ['a', 'b', 'c'])
        assert dask == x._dask
Пример #2
0
def test_to_task_dask():
    with warnings.catch_warnings(record=True):
        a = delayed(1, name='a')
        b = delayed(2, name='b')
        task, dask = to_task_dask([a, b, 3])
        assert task == ['a', 'b', 3]

        task, dask = to_task_dask((a, b, 3))
        assert task == (tuple, ['a', 'b', 3])
        assert dict(dask) == merge(a.dask, b.dask)

        task, dask = to_task_dask({a: 1, b: 2})
        assert (task == (dict, [['b', 2], ['a', 1]]) or
                task == (dict, [['a', 1], ['b', 2]]))
        assert dict(dask) == merge(a.dask, b.dask)

        f = namedtuple('f', ['x', 'y'])
        x = f(1, 2)
        task, dask = to_task_dask(x)
        assert task == x
        assert dict(dask) == {}

        task, dask = to_task_dask(slice(a, b, 3))
        assert task == (slice, 'a', 'b', 3)
        assert dict(dask) == merge(a.dask, b.dask)

        # Issue https://github.com/dask/dask/issues/2107
        class MyClass(dict):
            pass

        task, dask = to_task_dask(MyClass())
        assert type(task) is MyClass
        assert dict(dask) == {}

        # Custom dask objects
        x = Tuple({'a': 1, 'b': 2, 'c': (add, 'a', 'b')}, ['a', 'b', 'c'])
        task, dask = to_task_dask(x)
        assert task in dask
        f = dask.pop(task)
        assert f == (tuple, ['a', 'b', 'c'])
        assert dask == x._dask
Пример #3
0
def test_to_task_dask():
    a = delayed(1, name="a")
    b = delayed(2, name="b")
    task, dask = to_task_dask([a, b, 3])
    assert task == ["a", "b", 3]

    task, dask = to_task_dask((a, b, 3))
    assert task == (tuple, ["a", "b", 3])
    assert dict(dask) == merge(a.dask, b.dask)

    task, dask = to_task_dask({a: 1, b: 2})
    assert task == (dict, [["b", 2], ["a", 1]]) or task == (dict, [["a", 1],
                                                                   ["b", 2]])
    assert dict(dask) == merge(a.dask, b.dask)

    f = namedtuple("f", ["x", "y"])
    x = f(1, 2)
    task, dask = to_task_dask(x)
    assert task == x
    assert dict(dask) == {}

    task, dask = to_task_dask(slice(a, b, 3))
    assert task == (slice, "a", "b", 3)
    assert dict(dask) == merge(a.dask, b.dask)

    # Issue https://github.com/dask/dask/issues/2107
    class MyClass(dict):
        pass

    task, dask = to_task_dask(MyClass())
    assert type(task) is MyClass
    assert dict(dask) == {}

    # Custom dask objects
    x = Tuple({"a": 1, "b": 2, "c": (add, "a", "b")}, ["a", "b", "c"])
    task, dask = to_task_dask(x)
    assert task in dask
    f = dask.pop(task)
    assert f == (tuple, ["a", "b", "c"])
    assert dask == x._dask