Example #1
0
def atypes_node_setup_test():
    mem = MockMemory()
    text = 'hello, world!'
    mem.w_cstr(12, text)
    node = Node(mem, 0x42)
    node.setup(1234, 5678, NodeType.NT_DEVICE, -5, 12)
    # check node
    assert node.get_succ() == 1234
    assert node.get_pred() == 5678
    assert int(node.get_type()) == NodeType.NT_DEVICE
    assert node.get_pri() == -5
    assert node.get_name(True) == 12
    assert node.get_name() == text
    node.set_type(NodeType(NodeType.NT_DEVICE))
Example #2
0
def atypes_library_base_test():
    mem = MockMemory()
    alloc = MemoryAlloc(mem)
    # alloc lib
    name = "my.library"
    id_str = "my.library 1.2"
    neg_size = 36
    pos_size = LibraryStruct.get_size()
    lib = Library.alloc(alloc, name, id_str, neg_size)
    assert lib.get_name() == name
    assert lib.get_id_string() == id_str
    size = lib.get_size()
    assert pos_size == lib.get_pos_size()
    assert neg_size == lib.get_neg_size()
    assert size == pos_size + neg_size
    # lib setup
    flags = LibFlags(LibFlags.LIBF_SUMMING, LibFlags.LIBF_CHANGED)
    ltype = NodeType(NodeType.NT_DEVICE)
    pri = -3
    ver = 1
    rev = 2
    lib.setup(version=ver, revision=rev, pri=pri, flags=flags, type=ltype)
    # check lib
    node = lib.get_node()
    assert node.get_succ() is None
    assert node.get_pred() is None
    assert node.get_type() == ltype
    assert node.get_pri() == pri
    assert lib.get_flags() == flags
    assert lib.get_pad() == 0
    assert lib.get_neg_size() == neg_size
    assert lib.get_pos_size() == pos_size
    assert lib.get_version() == ver
    assert lib.get_revision() == rev
    assert lib.get_sum() == 0
    assert lib.get_open_cnt() == 0
    assert lib.get_name() == name
    assert lib.get_id_string() == id_str
    # fill funcs
    lib.fill_funcs()
    lib_base = lib.get_addr()
    assert mem.r16(lib_base - 6) == op_rts
    # done
    lib.free()
    assert alloc.is_all_free()
Example #3
0
def atypes_node_base_test():
    mem = MockMemory()
    text = 'hello, world!'
    mem.w_cstr(12, text)
    node = Node(mem, 0x42)
    # set node
    node.set_succ(1234)
    node.set_pred(5678)
    node.set_type(NodeType.NT_LIBRARY)
    node.set_pri(-3)
    node.set_name(12)
    # check node
    assert node.get_succ() == 1234
    assert node.get_pred() == 5678
    assert int(node.get_type()) == NodeType.NT_LIBRARY
    assert node.get_type() == NodeType(NodeType.NT_LIBRARY)
    assert node.get_pri() == -3
    assert node.get_name(True) == 12
    assert node.get_name() == text
Example #4
0
def atypes_node_type_to_str_test():
    assert NodeType.to_str(NodeType.NT_UNKNOWN) == 'NT_UNKNOWN'
    with pytest.raises(ValueError):
        NodeType.to_str(-1)
Example #5
0
def atypes_node_type_from_str_test():
    assert NodeType.from_str('NT_INTERRUPT') == NodeType.NT_INTERRUPT
    with pytest.raises(ValueError):
        NodeType.from_str('bla')
Example #6
0
def atypes_node_type_to_str_test():
  assert NodeType.to_str(NodeType.NT_UNKNOWN) == 'NT_UNKNOWN'
  with pytest.raises(ValueError):
    NodeType.to_str(-1)
Example #7
0
def atypes_node_type_from_str_test():
  assert NodeType.from_str('NT_INTERRUPT') == NodeType.NT_INTERRUPT
  with pytest.raises(ValueError):
    NodeType.from_str('bla')