#include "test.h" Str mkstr(char *s) { Str r; sinit(&r, s, strlen(s)); return r; } int checkstr(struct ct *t, char *where, char *want, Str *got) { char buf[Maxutf]; stoutf(got, buf, sizeof buf); if(strcmp(want, buf) == 0) return 1; return CT_ERRORF(t, "%s: want \"%s\", got \"%s\"", where, want, buf); } Str shownpre(Im *state) { Str mapped, shown; if(state->l->lang == LangJP || state->l->lang == LangJPK){ shown = state->pre; if(state->raw.n == 0) return shown; if(mapget(state->l->map, &state->raw, &mapped)) sappend(&shown, &mapped); else sappend(&shown, &state->raw); return shown; } if(state->l->map != nil && mapget(state->l->map, &state->pre, &shown)) return shown; return state->pre; }