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
12class IOHandlerCompletionTest(PExpectTest):
13
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
21        # Start with a small window
22        self.launch(dimensions=(10,10))
23
24        self.child.send("his is a long sentence missing its first letter.")
25
26        # Now resize to something bigger
27        self.child.setwinsize(100,500)
28
29        # Hit "left" 60 times (to go to the beginning of the line) and insert
30        # a character.
31        self.child.send(60 * "\033[D")
32        self.child.send("T")
33
34        self.child.expect_exact("(lldb) This is a long sentence missing its first letter.")
35        self.quit()
36