def test_toggle_default(self, graph, sum_op):
     graph.add_operation(sum_op)
     return_value = graph.toggle_disabled(sum_op)
     assert graph.disabled(sum_op) is True
     assert return_value == []
     return_value = graph.toggle_disabled(sum_op)
     assert graph.disabled(sum_op) is False
     assert return_value == []
예제 #2
0
 def test_add_link(self, graph, sum_op, square_op):
     graph.add_operation(sum_op)
     graph.add_operation(square_op)
     graph.add_link(source=sum_op, dest=square_op, source_param="sum", dest_param="n")
     sum_inbound_links = graph.get_inbound_links(sum_op)
     sum_outbound_links = graph.get_outbound_links(sum_op)
     square_inbound_links = graph.get_inbound_links(square_op)
     square_outbound_links = graph.get_outbound_links(square_op)
     links = [("sum", "n")]
     assert sum_inbound_links[square_op] == []
     assert sum_outbound_links[square_op] == links
     assert square_inbound_links[sum_op] == links
     assert square_outbound_links[sum_op] == []
예제 #3
0
    def test_add_multiple_links(self, graph, sum_op, square_op):
        graph.add_operation(sum_op)
        graph.add_operation(square_op)
        import math

        def my_sqrt(num):
            return math.sqrt(num)

        sqrt_op = operation(my_sqrt, output_names=("sqrt"))()
        graph.add_operation(sqrt_op)
        # sum -> square -> sqrt
        #   \               |
        #    -------->------
        graph.add_link(source=sum_op, dest=square_op, source_param="sum", dest_param="n")
        graph.add_link(source=square_op, dest=sqrt_op, source_param="square", dest_param="num")
        graph.add_link(source=sum_op, dest=sqrt_op, source_param="sum", dest_param="num")
        # sum -> square
        assert graph.get_inbound_links(sum_op)[square_op] == []
        assert graph.get_outbound_links(sum_op)[square_op] == [("sum", "n")]
        assert graph.get_inbound_links(square_op)[sum_op] == [("sum", "n")]
        assert graph.get_outbound_links(square_op)[sum_op] == []
        # square -> sqrt
        assert graph.get_inbound_links(square_op)[sqrt_op] == []
        assert graph.get_outbound_links(square_op)[sqrt_op] == [("square", "num")]
        assert graph.get_inbound_links(sqrt_op)[square_op] == [("square", "num")]
        assert graph.get_outbound_links(sqrt_op)[square_op] == []
        # sum -> sqrt
        assert graph.get_inbound_links(sum_op)[sqrt_op] == []
        assert graph.get_outbound_links(sum_op)[sqrt_op] == [("sum", "num")]
        assert graph.get_inbound_links(sqrt_op)[sum_op] == [("sum", "num")]
        assert graph.get_outbound_links(sqrt_op)[sum_op] == []
 def test_default_no_links(self, graph, sum_op):
     graph.add_operation(sum_op)
     return_value = graph.set_disabled(sum_op)
     assert graph.disabled(sum_op) is True
     assert return_value == []
 def test_operations(self, graph, sum_op):
     graph.add_operation(sum_op)
     assert graph.operations == [sum_op]
 def test_as_dask_graph_no_links(self, graph, sum_op):
     graph.add_operation(sum_op)
     dask_graph, end_ids = graph.as_dask_graph()
     assert len(dask_graph["0"]) == 1
     assert dask_graph["0"][0].node is sum_op
     assert end_ids == ["0"]
 def test_add_link_messing_dest(self, graph, sum_op, square_op):
     graph.add_operation(sum_op)
     with pytest.raises(ValueError):
         graph.add_link(sum_op, square_op, "sum", "n")