def test_open_node_inheritance():
    """
        test case for open node that derive from other open nodes
        in the case the superclass does not have the TYPE attribute
    """
    class NodeStLinkBoard1(BaseOpenNode):
        """derived class 1"""
        TYPE = "stlink_board_1"

    class NodeStLinkBoard2(BaseOpenNode, OpenNodeBase):
        """derived class 2"""
        TYPE = "stlink_board_2"

    board_1 = open_node_class("stlink_board_1")
    board_2 = open_node_class("stlink_board_2")

    for node in all_open_nodes_types():
        assert open_node_class(node) != BaseOpenNode

    assert board_1 == NodeStLinkBoard1
    assert board_2 == NodeStLinkBoard2

    board_instance = board_1()

    assert board_instance.TTY == '/dev/iotlab/tty_stlink'
    assert board_instance.BAUDRATE == 4242

    assert board_instance.setup('path/to/firmware') == 42
    assert board_instance.teardown() == 4242
    assert board_instance.status() == 0
示例#2
0
def test_nodes_classes():
    """Test loading all implemented open nodes implementation."""
    for node in all_open_nodes_types():
        # No exception
        print(node)
        node_class = open_node_class(node)
        node_class()
        print(node_class)
def test_nodes_classes(check_output):
    """Test loading all implemented open nodes implementation."""
    # node_lora_gateway starts the lora_pkt_forwarder during initialization
    # so we need to mock the process pid check.
    check_output.return_value = 42
    for node in all_open_nodes_types():
        # No exception
        print(node)
        node_class = open_node_class(node)
        node_class()
        print(node_class)