From c8d2f28ed827749a7f08a79510472910a6919c95 Mon Sep 17 00:00:00 2001 From: Fredrik Fornwall Date: Mon, 18 Jan 2016 15:15:34 +0100 Subject: [PATCH] Terminal emulation: Test "CSI X"/ECH processing --- .../termux/terminal/ControlSequenceIntroducerTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/src/test/java/com/termux/terminal/ControlSequenceIntroducerTest.java b/app/src/test/java/com/termux/terminal/ControlSequenceIntroducerTest.java index 585b4fae..127b9539 100644 --- a/app/src/test/java/com/termux/terminal/ControlSequenceIntroducerTest.java +++ b/app/src/test/java/com/termux/terminal/ControlSequenceIntroducerTest.java @@ -20,4 +20,13 @@ public class ControlSequenceIntroducerTest extends TerminalTestCase { withTerminalSized(3, 4).enterString("1\r\n2\r\n3\r\nhi\033[Sy").assertLinesAre("2 ", "3 ", "hi ", " y"); } + /** CSI Ps X Erase Ps Character(s) (default = 1) (ECH). */ + public void testCsiX() { + // See https://code.google.com/p/chromium/issues/detail?id=212712 where test was extraced from. + withTerminalSized(13, 2).enterString("abcdefghijkl\b\b\b\b\b\033[X").assertLinesAre("abcdefg ijkl ", " "); + withTerminalSized(13, 2).enterString("abcdefghijkl\b\b\b\b\b\033[1X").assertLinesAre("abcdefg ijkl ", " "); + withTerminalSized(13, 2).enterString("abcdefghijkl\b\b\b\b\b\033[2X").assertLinesAre("abcdefg jkl ", " "); + withTerminalSized(13, 2).enterString("abcdefghijkl\b\b\b\b\b\033[20X").assertLinesAre("abcdefg ", " "); + } + }