From 7b3dc4be71e9c611bc4a6b191264f99eb642d44c Mon Sep 17 00:00:00 2001 From: Paul LeoNerd Evans Date: Fri, 30 Nov 2012 14:35:23 +0000 Subject: Return a real key type for unrecognised CSI sequences; allow accessing them by termkey_interpret_csi() --- t/39csi.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 t/39csi.c (limited to 't') diff --git a/t/39csi.c b/t/39csi.c new file mode 100644 index 0000000..f3bb598 --- /dev/null +++ b/t/39csi.c @@ -0,0 +1,32 @@ +#include "../termkey.h" +#include "taplib.h" + +int main(int argc, char *argv[]) +{ + TermKey *tk; + TermKeyKey key; + long args[16]; + size_t nargs = 16; + unsigned long command; + + plan_tests(7); + + tk = termkey_new_abstract("vt100", 0); + + termkey_push_bytes(tk, "\e[5;25v", 7); + + is_int(termkey_getkey(tk, &key), TERMKEY_RES_KEY, "getkey yields RES_KEY for position report"); + + is_int(key.type, TERMKEY_TYPE_UNKNOWN_CSI, "key.type for unknown CSI"); + + is_int(termkey_interpret_csi(tk, &key, args, &nargs, &command), TERMKEY_RES_KEY, "interpret_csi yields RES_KEY"); + + is_int(nargs, 2, "nargs for unknown CSI"); + is_int(args[0], 5, "args[0] for unknown CSI"); + is_int(args[1], 25, "args[1] for unknown CSI"); + is_int(command, 'v', "command for unknown CSI"); + + termkey_destroy(tk); + + return exit_status(); +} -- cgit v1.2.3