1import lldb
2from lldbsuite.test.decorators import *
3from lldbsuite.test.lldbtest import *
4from lldbsuite.test.lldbpexpect import PExpectTest
5
6class TestIOHandlerProcessSTDIO(PExpectTest):
7
8    mydir = TestBase.compute_mydir(__file__)
9    NO_DEBUG_INFO_TESTCASE = True
10
11    # PExpect uses many timeouts internally and doesn't play well
12    # under ASAN on a loaded machine..
13    @skipIfAsan
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