diff options
Diffstat (limited to 'tests/dcs_test.c')
| -rw-r--r-- | tests/dcs_test.c | 150 |
1 files changed, 75 insertions, 75 deletions
diff --git a/tests/dcs_test.c b/tests/dcs_test.c index d9455be..c76b73b 100644 --- a/tests/dcs_test.c +++ b/tests/dcs_test.c @@ -14,11 +14,11 @@ static void respond(void *ud, const char *data, size_t len) response[len] = 0; response_len = len; } -static void write_seq(struct term *t, const char *s) +static void write_seq(struct wsap_vtcore *t, const char *s) { for (; *s; s++) tt_write(t, s, 1); } -static const char *row_text(struct term *t, int r, char *buf) +static const char *row_text(struct wsap_vtcore *t, int r, char *buf) { int n = 0; for (int c = 0; c < tt_cols(t); c++) @@ -27,18 +27,18 @@ static const char *row_text(struct term *t, int r, char *buf) buf[n] = 0; return buf; } -static bool row_is(struct term *t, int r, const char *want) +static bool row_is(struct wsap_vtcore *t, int r, const char *want) { - char got[TERM_MAX_COLS + 1]; + char got[WSAP_VTCORE_MAX_COLS + 1]; if (strcmp(row_text(t, r, got), want)) { fprintf(stderr, "row %d: got \"%s\" want \"%s\"\n", r, got, want); return false; } return true; } -static struct term *new_term(int cols, int rows) +static struct wsap_vtcore *new_term(int cols, int rows) { - struct term *t = tt_new_opts(cols, rows, &(struct term_callbacks){ .reply = respond }); + struct wsap_vtcore *t = tt_new_opts(cols, rows, &(struct wsap_vtcore_callbacks){ .reply = respond }); assert(t); response_len = 0; response[0] = 0; @@ -66,7 +66,7 @@ static void hex_encode(char *out, const char *s) *out = 0; } -static void assert_rqss(struct term *t, const char *spec, const char *payload) +static void assert_rqss(struct wsap_vtcore *t, const char *spec, const char *payload) { char req[128], want[256]; snprintf(req, sizeof(req), "\033P$q%s\033\\", spec); @@ -75,7 +75,7 @@ static void assert_rqss(struct term *t, const char *spec, const char *payload) write_seq(t, req); expect_response(want); } -static void assert_rqss_invalid(struct term *t, const char *spec) +static void assert_rqss_invalid(struct wsap_vtcore *t, const char *spec) { char req[128]; snprintf(req, sizeof(req), "\033P$q%s\033\\", spec); @@ -86,55 +86,55 @@ static void assert_rqss_invalid(struct term *t, const char *spec) static void test_decrqss_sgr(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); assert_rqss(t, "m", "m"); write_seq(t, "\033[1;31m"); assert_rqss(t, "m", "0;1;31m"); - term_free(t); + wsap_vtcore_free(t); t = new_term(80, 24); write_seq(t, "\033[4:3m"); assert_rqss(t, "m", "0;4:3m"); - term_free(t); + wsap_vtcore_free(t); t = new_term(80, 24); write_seq(t, "\033[38;2;10;20;30m"); assert_rqss(t, "m", "0;38:2:10:20:30m"); - term_free(t); + wsap_vtcore_free(t); } static void test_decrqss_margins_and_page(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); assert_rqss(t, "r", "1;24r"); assert_rqss(t, "t", "24t"); assert_rqss(t, "$|", "80$|"); assert_rqss(t, "*|", "24*|"); write_seq(t, "\033[3;10r"); assert_rqss(t, "r", "3;10r"); - term_free(t); + wsap_vtcore_free(t); t = new_term(80, 24); assert_rqss(t, "s", "1;80s"); write_seq(t, "\033[?69h\033[5;20s"); assert_rqss(t, "s", "5;20s"); - term_free(t); + wsap_vtcore_free(t); } static void test_decrqss_cursor_style(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); assert_rqss(t, " q", "1 q"); write_seq(t, "\033[5 q"); assert_rqss(t, " q", "5 q"); write_seq(t, "\033[4 q"); assert_rqss(t, " q", "4 q"); - term_free(t); + wsap_vtcore_free(t); } static void test_decrqss_misc(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); assert_rqss(t, "\"p", "64;1\"p"); assert_rqss(t, "\"q", "0\"q"); assert_rqss(t, "$}", "0$}"); @@ -142,12 +142,12 @@ static void test_decrqss_misc(void) assert_rqss(t, "*x", "0*x"); write_seq(t, "\033[2*x"); assert_rqss(t, "*x", "2*x"); - term_free(t); + wsap_vtcore_free(t); } static void test_decrqss_invalid(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); static const char *bad[] = { "){", ",|", ",}", ">0f", ">0m", ">0t", "z", "ABC", }; @@ -157,10 +157,10 @@ static void test_decrqss_invalid(void) response_len = 0; write_seq(t, "\033P$x\033\\"); expect_no_response(); - term_free(t); + wsap_vtcore_free(t); } -static void assert_tcap(struct term *t, const char *name, const char *value) +static void assert_tcap(struct wsap_vtcore *t, const char *name, const char *value) { char hn[128], hv[512], req[256], want[1024]; hex_encode(hn, name); @@ -174,10 +174,10 @@ static void assert_tcap(struct term *t, const char *name, const char *value) static void test_xtgettcap(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); assert_tcap(t, "kind", "\033[1;2B"); - assert_tcap(t, "TN", "term"); - assert_tcap(t, "name", "term"); + assert_tcap(t, "TN", "wsap_vtcore"); + assert_tcap(t, "name", "wsap_vtcore"); assert_tcap(t, "Co", "16777216"); assert_tcap(t, "colors", "16777216"); assert_tcap(t, "RGB", "8/8/8"); @@ -216,12 +216,12 @@ static void test_xtgettcap(void) assert_tcap(t, "kri", "\033[1;2A"); assert_tcap(t, "kxIN", "\033[I"); assert_tcap(t, "kxOUT", "\033[O"); - term_free(t); + wsap_vtcore_free(t); } static void test_xtgettcap_multi(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); char hk[16], htn[16], hb[16], hv[32], req[256], want[1024]; hex_encode(hk, "kind"); hex_encode(htn, "TN"); @@ -230,7 +230,7 @@ static void test_xtgettcap_multi(void) snprintf(req, sizeof(req), "\033P+q%s;%s\033\\", hk, htn); snprintf(want, sizeof(want), "\033P1+r%s=%s;%s=%s\033\\", - hk, hv, htn, "7465726d"); + hk, hv, htn, "777361705f7674636f7265"); response_len = 0; write_seq(t, req); expect_response(want); @@ -247,12 +247,12 @@ static void test_xtgettcap_multi(void) response_len = 0; write_seq(t, req); expect_response(want); - term_free(t); + wsap_vtcore_free(t); } static void test_xtgettcap_malformed(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); static const char *bad[] = {"6b696", "zz", "6g", "6b69 6e"}; for (size_t i = 0; i < sizeof(bad) / sizeof(bad[0]); i++) { char req[128]; @@ -264,12 +264,12 @@ static void test_xtgettcap_malformed(void) assert(response[response_len - 2] == '\033'); assert(response[response_len - 1] == '\\'); } - term_free(t); + wsap_vtcore_free(t); } static void test_xtsettcap(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); char hn[32]; hex_encode(hn, "myterm"); char req[128]; @@ -278,12 +278,12 @@ static void test_xtsettcap(void) write_seq(t, req); expect_no_response(); assert_tcap(t, "TN", "myterm"); - term_free(t); + wsap_vtcore_free(t); } static void test_xtgetxres(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); char hn[64], req[128], want[256]; hex_encode(hn, "allowTcapOps"); snprintf(req, sizeof(req), "\033P+Q%s\033\\", hn); @@ -291,40 +291,40 @@ static void test_xtgetxres(void) response_len = 0; write_seq(t, req); expect_response(want); - term_free(t); + wsap_vtcore_free(t); } static void test_decrsps_cir(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); write_seq(t, "\033P1$t3;5;1;I;@;H;00;@;BBBB\033\\"); assert(tt_cursor_y(t) == 2 && tt_cursor_x(t) == 4); write_seq(t, "Z"); - const struct term_cell *cell = tt_cell(t, 4, 2); + const struct wsap_vtcore_cell *cell = tt_cell(t, 4, 2); assert(cell->text == 'Z'); - assert(cell->attrs & TERM_ATTR_BOLD); - assert(cell->fg == TERM_COLOR_BG); - term_free(t); + assert(cell->attrs & WSAP_VTCORE_ATTR_BOLD); + assert(cell->fg == WSAP_VTCORE_COLOR_BG); + wsap_vtcore_free(t); t = new_term(80, 24); write_seq(t, "\033P1$t3;5;1;@;@;H;00;@;BBBB\033\\"); write_seq(t, "\033[1;80Hab"); assert(tt_cell(t, 79, 0)->text == 'a'); assert(tt_cell(t, 0, 1)->text == 'b'); - term_free(t); + wsap_vtcore_free(t); t = new_term(80, 24); write_seq(t, "\033[5;15r"); write_seq(t, "\033P1$t3;5;1;@;@;I;00;@;BBBB\033\\"); write_seq(t, "\033[1;1H"); assert(tt_cursor_y(t) == 4 && tt_cursor_x(t) == 0); - term_free(t); + wsap_vtcore_free(t); } static void test_decrsps_tabsr(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); write_seq(t, "\033P2$t4/10\033\\"); write_seq(t, "\033[1;1H"); write_seq(t, "\t"); @@ -333,26 +333,26 @@ static void test_decrsps_tabsr(void) assert(tt_cursor_x(t) == 9); write_seq(t, "\t"); assert(tt_cursor_x(t) == 79); - term_free(t); + wsap_vtcore_free(t); } static void test_synchronized_output(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); write_seq(t, "\033P=1s\033\\"); - assert(term_modes(t).synchronized); + assert(wsap_vtcore_modes(t).synchronized); write_seq(t, "\033P=2s\033\\"); - assert(!term_modes(t).synchronized); + assert(!wsap_vtcore_modes(t).synchronized); write_seq(t, "\033P=10s\033\\"); - assert(!term_modes(t).synchronized); + assert(!wsap_vtcore_modes(t).synchronized); write_seq(t, "\033P=1;s\033\\"); - assert(term_modes(t).synchronized); + assert(wsap_vtcore_modes(t).synchronized); write_seq(t, "\033P=xs\033\\"); - assert(term_modes(t).synchronized); + assert(wsap_vtcore_modes(t).synchronized); write_seq(t, "\033P=2;s\033\\"); - assert(!term_modes(t).synchronized); - term_free(t); + assert(!wsap_vtcore_modes(t).synchronized); + wsap_vtcore_free(t); } static void test_ignored_dcs(void) @@ -367,36 +367,36 @@ static void test_ignored_dcs(void) "\033P?~junk\033\\", }; for (size_t i = 0; i < sizeof(seqs) / sizeof(seqs[0]); i++) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); write_seq(t, "A"); write_seq(t, seqs[i]); write_seq(t, "B"); assert(row_is(t, 0, "AB")); assert(tt_cursor_x(t) == 2 && tt_cursor_y(t) == 0); expect_no_response(); - term_free(t); + wsap_vtcore_free(t); } } static void test_xtversion(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); response_len = 0; write_seq(t, "\033[>0q"); - expect_response("\033P>|term\033\\"); - term_free(t); + expect_response("\033P>|wsap_vtcore\033\\"); + wsap_vtcore_free(t); } -/* term_options.name feeds XTVERSION and the TN and name capabilities. */ +/* wsap_vtcore_options.name feeds XTVERSION and the TN and name capabilities. */ static void test_host_name(void) { - struct term_options opt = { + struct wsap_vtcore_options opt = { .size = { .x = 80, .y = 24 }, .scrollback = TEST_SCROLLBACK, .name = "myterm", .callbacks = { .reply = respond }, }; - struct term *t = term_new(&opt); + struct wsap_vtcore *t = wsap_vtcore_new(&opt); assert(t); response_len = 0; write_seq(t, "\033[>0q"); @@ -412,28 +412,28 @@ static void test_host_name(void) response_len = 0; write_seq(t, "\033[>0q"); expect_response("\033P>|myterm\033\\"); - term_free(t); + wsap_vtcore_free(t); /* NULL and "" both select the default. */ opt.name = ""; - t = term_new(&opt); + t = wsap_vtcore_new(&opt); assert(t); response_len = 0; write_seq(t, "\033[>0q"); - expect_response("\033P>|term\033\\"); - term_free(t); + expect_response("\033P>|wsap_vtcore\033\\"); + wsap_vtcore_free(t); opt.name = NULL; - t = term_new(&opt); + t = wsap_vtcore_new(&opt); assert(t); response_len = 0; write_seq(t, "\033[>0q"); - expect_response("\033P>|term\033\\"); - term_free(t); + expect_response("\033P>|wsap_vtcore\033\\"); + wsap_vtcore_free(t); } static void test_bel_terminator(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); response_len = 0; write_seq(t, "\033P+q6b696e64\007"); expect_response("\033P1+r6b696e64=1b5b313b3242\033\\"); @@ -441,7 +441,7 @@ static void test_bel_terminator(void) response_len = 0; write_seq(t, "\033P$qm\007"); expect_response("\033P1$rm\033\\"); - term_free(t); + wsap_vtcore_free(t); } /* A query far past the old 256-byte DCS buffer is answered in full, @@ -464,7 +464,7 @@ static void test_dcs_long_query(void) snprintf(want + wn, sizeof(want) - (size_t)wn, "\033\\"); assert(strlen(req) > 256); - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); write_seq(t, req); expect_response(want); response_len = 0; @@ -472,26 +472,26 @@ static void test_dcs_long_query(void) expect_response(want); write_seq(t, "X"); assert(row_is(t, 0, "X")); - term_free(t); + wsap_vtcore_free(t); } static void test_dcs_abort_c0(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); response_len = 0; write_seq(t, "\033P+q6b69\nX"); expect_no_response(); assert(row_is(t, 1, "X")); - term_free(t); + wsap_vtcore_free(t); } static void test_dcs_abort_esc(void) { - struct term *t = new_term(80, 24); + struct wsap_vtcore *t = new_term(80, 24); response_len = 0; write_seq(t, "\033P$qm\033[5n"); expect_response("\033[0n"); - term_free(t); + wsap_vtcore_free(t); } int main(void) |
