This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGf93d861349f9: [lldb] Fix ^C handling in IOHandlerProcessSTDIO (authored by labath, committed by JDevlieghere).
Changed prior to commit: https://reviews.llvm.org/D121912?vs=416172&id=416274#toc Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D121912/new/ https://reviews.llvm.org/D121912 Files: lldb/lldb/test/API/iohandler/sigint/Makefile lldb/lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py lldb/lldb/test/API/iohandler/sigint/cat.cpp Index: lldb/lldb/test/API/iohandler/sigint/cat.cpp =================================================================== --- /dev/null +++ lldb/lldb/test/API/iohandler/sigint/cat.cpp @@ -0,0 +1,12 @@ +#include <iostream> + +void input_copy_loop() { + std::string str; + while (std::getline(std::cin, str)) + std::cout << "read: " << str << std::endl; +} + +int main() { + input_copy_loop(); + return 0; +} Index: lldb/lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py =================================================================== --- /dev/null +++ lldb/lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py @@ -0,0 +1,42 @@ +""" +Test sending SIGINT Process IOHandler +""" + +import os + +import lldb +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test.lldbpexpect import PExpectTest + +class TestCase(PExpectTest): + + mydir = TestBase.compute_mydir(__file__) + + def test(self): + self.build(dictionary={"CXX_SOURCES":"cat.cpp"}) + self.launch(executable=self.getBuildArtifact(), timeout=5) + + self.child.sendline("process launch") + self.child.expect("Process .* launched") + + self.child.sendline("Hello cat") + self.child.expect_exact("read: Hello cat") + + self.child.sendintr() + self.child.expect("Process .* stopped") + self.expect_prompt() + + self.expect("bt", substrs=["input_copy_loop"]) + + self.child.sendline("continue") + self.child.expect("Process .* resuming") + + self.child.sendline("Goodbye cat") + self.child.expect_exact("read: Goodbye cat") + + self.child.sendeof() + self.child.expect("Process .* exited") + self.expect_prompt() + + self.quit() Index: lldb/lldb/test/API/iohandler/sigint/Makefile =================================================================== --- /dev/null +++ lldb/lldb/test/API/iohandler/sigint/Makefile @@ -0,0 +1 @@ +include Makefile.rules
Index: lldb/lldb/test/API/iohandler/sigint/cat.cpp =================================================================== --- /dev/null +++ lldb/lldb/test/API/iohandler/sigint/cat.cpp @@ -0,0 +1,12 @@ +#include <iostream> + +void input_copy_loop() { + std::string str; + while (std::getline(std::cin, str)) + std::cout << "read: " << str << std::endl; +} + +int main() { + input_copy_loop(); + return 0; +} Index: lldb/lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py =================================================================== --- /dev/null +++ lldb/lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py @@ -0,0 +1,42 @@ +""" +Test sending SIGINT Process IOHandler +""" + +import os + +import lldb +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test.lldbpexpect import PExpectTest + +class TestCase(PExpectTest): + + mydir = TestBase.compute_mydir(__file__) + + def test(self): + self.build(dictionary={"CXX_SOURCES":"cat.cpp"}) + self.launch(executable=self.getBuildArtifact(), timeout=5) + + self.child.sendline("process launch") + self.child.expect("Process .* launched") + + self.child.sendline("Hello cat") + self.child.expect_exact("read: Hello cat") + + self.child.sendintr() + self.child.expect("Process .* stopped") + self.expect_prompt() + + self.expect("bt", substrs=["input_copy_loop"]) + + self.child.sendline("continue") + self.child.expect("Process .* resuming") + + self.child.sendline("Goodbye cat") + self.child.expect_exact("read: Goodbye cat") + + self.child.sendeof() + self.child.expect("Process .* exited") + self.expect_prompt() + + self.quit() Index: lldb/lldb/test/API/iohandler/sigint/Makefile =================================================================== --- /dev/null +++ lldb/lldb/test/API/iohandler/sigint/Makefile @@ -0,0 +1 @@ +include Makefile.rules
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits