xref: /llvm-project/lldb/test/API/iohandler/resize/TestIOHandlerResize.py (revision 2238dcc39358353cac21df75c3c3286ab20b8f53)
1"""
2Test resizing in our IOHandlers.
3"""
4
5import os
6
7import lldb
8from lldbsuite.test.decorators import *
9from lldbsuite.test.lldbtest import *
10from lldbsuite.test.lldbpexpect import PExpectTest
11
12
13class IOHandlerCompletionTest(PExpectTest):
14    # PExpect uses many timeouts internally and doesn't play well
15    # under ASAN on a loaded machine..
16    @skipIfAsan
17    @skipIfEditlineSupportMissing
18    @skipIf(oslist=["linux"], archs=["arm", "aarch64"])
19    def test_resize(self):
20        # Start with a small window
21        self.launch(dimensions=(10, 10))
22
23        self.child.send("his is a long sentence missing its first letter.")
24
25        # Now resize to something bigger
26        self.child.setwinsize(100, 500)
27
28        # Hit "left" 60 times (to go to the beginning of the line) and insert
29        # a character.
30        self.child.send(60 * "\033[D")
31        self.child.send("T")
32
33        self.child.expect_exact(
34            "(lldb) This is a long sentence missing its first letter."
35        )
36        self.quit()
37