xref: /llvm-project/lldb/test/API/iohandler/stdio/TestIOHandlerProcessSTDIO.py (revision 2238dcc39358353cac21df75c3c3286ab20b8f53)
1import lldb
2from lldbsuite.test.decorators import *
3from lldbsuite.test.lldbtest import *
4from lldbsuite.test.lldbpexpect import PExpectTest
5
6
7class TestIOHandlerProcessSTDIO(PExpectTest):
8    NO_DEBUG_INFO_TESTCASE = True
9
10    # PExpect uses many timeouts internally and doesn't play well
11    # under ASAN on a loaded machine..
12    @skipIfAsan
13    @skipIf(oslist=["linux"], archs=["arm", "aarch64"])
14    def test(self):
15        self.build()
16        self.launch(executable=self.getBuildArtifact("a.out"))
17        self.child.sendline("run")
18
19        self.child.send("foo\n")
20        self.child.expect_exact("stdout: foo")
21
22        self.child.send("bar\n")
23        self.child.expect_exact("stdout: bar")
24
25        self.child.send("baz\n")
26        self.child.expect_exact("stdout: baz")
27
28        self.child.sendcontrol("d")
29        self.quit()
30