From 75f19a202404ca6bd05021592ba608fe51797fad Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Mon, 20 Oct 2014 22:54:07 -0400 Subject: add tests for movement commands --- t/csi_test.py | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 t/csi_test.py diff --git a/t/csi_test.py b/t/csi_test.py new file mode 100644 index 0000000..44d207c --- /dev/null +++ b/t/csi_test.py @@ -0,0 +1,74 @@ +from . import VT100Test + +class CSITest(VT100Test): + def test_cup(self): + assert self.vt.cursor_pos() == (0, 0) + + self.process("\033[10;10H") + assert self.vt.cursor_pos() == (9, 9) + + self.process("\033[H") + assert self.vt.cursor_pos() == (0, 0) + + self.process("\033[8H") + assert self.vt.cursor_pos() == (7, 0) + + self.process("\033[0;0H") + assert self.vt.cursor_pos() == (0, 0) + + self.process("\033[1;1H") + assert self.vt.cursor_pos() == (0, 0) + + self.process("\033[500;500H") + assert self.vt.cursor_pos() == (23, 79) + + def test_directional_movement(self): + assert self.vt.cursor_pos() == (0, 0) + + self.process("\033[C") + assert self.vt.cursor_pos() == (0, 1) + + self.process("\033[C") + assert self.vt.cursor_pos() == (0, 2) + + self.process("\033[20C") + assert self.vt.cursor_pos() == (0, 22) + + self.process("\033[D") + assert self.vt.cursor_pos() == (0, 21) + + self.process("\033[D") + assert self.vt.cursor_pos() == (0, 20) + + self.process("\033[9D") + assert self.vt.cursor_pos() == (0, 11) + + self.process("\033[500C") + assert self.vt.cursor_pos() == (0, 79) + + self.process("\033[500D") + assert self.vt.cursor_pos() == (0, 0) + + self.process("\033[B") + assert self.vt.cursor_pos() == (1, 0) + + self.process("\033[B") + assert self.vt.cursor_pos() == (2, 0) + + self.process("\033[20B") + assert self.vt.cursor_pos() == (22, 0) + + self.process("\033[A") + assert self.vt.cursor_pos() == (21, 0) + + self.process("\033[A") + assert self.vt.cursor_pos() == (20, 0) + + self.process("\033[9A") + assert self.vt.cursor_pos() == (11, 0) + + self.process("\033[500B") + assert self.vt.cursor_pos() == (23, 0) + + self.process("\033[500A") + assert self.vt.cursor_pos() == (0, 0) -- cgit v1.2.3