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))
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()
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
def atypes_node_type_to_str_test(): assert NodeType.to_str(NodeType.NT_UNKNOWN) == 'NT_UNKNOWN' with pytest.raises(ValueError): NodeType.to_str(-1)
def atypes_node_type_from_str_test(): assert NodeType.from_str('NT_INTERRUPT') == NodeType.NT_INTERRUPT with pytest.raises(ValueError): NodeType.from_str('bla')