from char_binary import * t = Test() if t.strlen("hile") != 4: raise RuntimeError("bad multi-arg typemap {}".format(t.strlen("hile"))) if t.ustrlen("hile") != 4: raise RuntimeError("bad multi-arg typemap {}".format(t.ustrlen("hile"))) if t.strlen("hil\0") != 4: raise RuntimeError("bad multi-arg typemap") if t.ustrlen("hil\0") != 4: raise RuntimeError("bad multi-arg typemap") # # creating a raw char* # pc = new_pchar(5) pchar_setitem(pc, 0, "h") pchar_setitem(pc, 1, "o") pchar_setitem(pc, 2, "l") pchar_setitem(pc, 3, "a") pchar_setitem(pc, 4, 0) if t.strlen(pc) != 4: raise RuntimeError("bad multi-arg typemap") if t.ustrlen(pc) != 4: raise RuntimeError("bad multi-arg typemap") cvar.var_pchar = pc if cvar.var_pchar != "hola": raise RuntimeError("bad pointer case {}".format(cvar.var_pchar)) cvar.var_namet = pc # if cvar.var_namet != "hola\0": if cvar.var_namet != "hola": raise RuntimeError("bad pointer case") delete_pchar(pc)