summaryrefslogtreecommitdiff
path: root/packages/Python/lldbsuite/test/functionalities/deleted-executable
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2019-01-19 10:06:29 +0000
committerDimitry Andric <dim@FreeBSD.org>2019-01-19 10:06:29 +0000
commit94994d372d014ce4c8758b9605d63fae651bd8aa (patch)
tree51c0b708bd59f205d6b35cb2a8c24d62f0c33d77 /packages/Python/lldbsuite/test/functionalities/deleted-executable
parent39be7ce23363d12ae3e49aeb1fdb2bfeb892e836 (diff)
Notes
Diffstat (limited to 'packages/Python/lldbsuite/test/functionalities/deleted-executable')
-rw-r--r--packages/Python/lldbsuite/test/functionalities/deleted-executable/Makefile5
-rw-r--r--packages/Python/lldbsuite/test/functionalities/deleted-executable/TestDeletedExecutable.py31
-rw-r--r--packages/Python/lldbsuite/test/functionalities/deleted-executable/main.cpp9
3 files changed, 45 insertions, 0 deletions
diff --git a/packages/Python/lldbsuite/test/functionalities/deleted-executable/Makefile b/packages/Python/lldbsuite/test/functionalities/deleted-executable/Makefile
new file mode 100644
index 0000000000000..8a7102e347af2
--- /dev/null
+++ b/packages/Python/lldbsuite/test/functionalities/deleted-executable/Makefile
@@ -0,0 +1,5 @@
+LEVEL = ../../make
+
+CXX_SOURCES := main.cpp
+
+include $(LEVEL)/Makefile.rules
diff --git a/packages/Python/lldbsuite/test/functionalities/deleted-executable/TestDeletedExecutable.py b/packages/Python/lldbsuite/test/functionalities/deleted-executable/TestDeletedExecutable.py
new file mode 100644
index 0000000000000..1eeaeeffa87bb
--- /dev/null
+++ b/packages/Python/lldbsuite/test/functionalities/deleted-executable/TestDeletedExecutable.py
@@ -0,0 +1,31 @@
+"""
+Test process attach/resume.
+"""
+
+from __future__ import print_function
+
+
+import os
+import time
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+class TestDeletedExecutable(TestBase):
+
+ mydir = TestBase.compute_mydir(__file__)
+ NO_DEBUG_INFO_TESTCASE = True
+
+ @skipIfWindows # cannot delete a running executable
+ @expectedFailureAll(oslist=["linux"]) # determining the architecture of the process fails
+ def test(self):
+ self.build()
+ exe = self.getBuildArtifact("a.out")
+
+ popen = self.spawnSubprocess(exe)
+ self.addTearDownHook(self.cleanupSubprocesses)
+ os.remove(exe)
+
+ self.runCmd("process attach -p " + str(popen.pid))
+ self.runCmd("kill")
diff --git a/packages/Python/lldbsuite/test/functionalities/deleted-executable/main.cpp b/packages/Python/lldbsuite/test/functionalities/deleted-executable/main.cpp
new file mode 100644
index 0000000000000..ad5d18732eac4
--- /dev/null
+++ b/packages/Python/lldbsuite/test/functionalities/deleted-executable/main.cpp
@@ -0,0 +1,9 @@
+#include <chrono>
+#include <thread>
+
+int main(int argc, char const *argv[])
+{
+ lldb_enable_attach();
+
+ std::this_thread::sleep_for(std::chrono::seconds(30));
+}