1*f3176f5fSMed Ismail Bennani"""
2*f3176f5fSMed Ismail BennaniTest python scripted process in lldb
3*f3176f5fSMed Ismail Bennani"""
4*f3176f5fSMed Ismail Bennani
5*f3176f5fSMed Ismail Bennaniimport os
6*f3176f5fSMed Ismail Bennani
7*f3176f5fSMed Ismail Bennaniimport lldb
8*f3176f5fSMed Ismail Bennanifrom lldbsuite.test.decorators import *
9*f3176f5fSMed Ismail Bennanifrom lldbsuite.test.lldbtest import *
10*f3176f5fSMed Ismail Bennanifrom lldbsuite.test import lldbutil
11*f3176f5fSMed Ismail Bennanifrom lldbsuite.test import lldbtest
12*f3176f5fSMed Ismail Bennani
13*f3176f5fSMed Ismail Bennani
14*f3176f5fSMed Ismail Bennaniclass PlatformProcessCrashInfoTestCase(TestBase):
15*f3176f5fSMed Ismail Bennani
16*f3176f5fSMed Ismail Bennani    mydir = TestBase.compute_mydir(__file__)
17*f3176f5fSMed Ismail Bennani
18*f3176f5fSMed Ismail Bennani    def setUp(self):
19*f3176f5fSMed Ismail Bennani        TestBase.setUp(self)
20*f3176f5fSMed Ismail Bennani        self.source = "main.c"
21*f3176f5fSMed Ismail Bennani
22*f3176f5fSMed Ismail Bennani    def tearDown(self):
23*f3176f5fSMed Ismail Bennani        TestBase.tearDown(self)
24*f3176f5fSMed Ismail Bennani
25*f3176f5fSMed Ismail Bennani    def test_python_plugin_package(self):
26*f3176f5fSMed Ismail Bennani        """Test that the lldb python module has a `plugins.scripted_process`
27*f3176f5fSMed Ismail Bennani        package."""
28*f3176f5fSMed Ismail Bennani        self.expect('script import lldb.plugins',
29*f3176f5fSMed Ismail Bennani                    substrs=["ModuleNotFoundError"], matching=False)
30*f3176f5fSMed Ismail Bennani
31*f3176f5fSMed Ismail Bennani        self.expect('script dir(lldb.plugins)',
32*f3176f5fSMed Ismail Bennani                    substrs=["scripted_process"])
33*f3176f5fSMed Ismail Bennani
34*f3176f5fSMed Ismail Bennani        self.expect('script import lldb.plugins.scripted_process',
35*f3176f5fSMed Ismail Bennani                    substrs=["ModuleNotFoundError"], matching=False)
36*f3176f5fSMed Ismail Bennani
37*f3176f5fSMed Ismail Bennani        self.expect('script dir(lldb.plugins.scripted_process)',
38*f3176f5fSMed Ismail Bennani                    substrs=["ScriptedProcess"])
39*f3176f5fSMed Ismail Bennani
40*f3176f5fSMed Ismail Bennani        self.expect('script from lldb.plugins.scripted_process import ScriptedProcess',
41*f3176f5fSMed Ismail Bennani                    substrs=["ImportError"], matching=False)
42*f3176f5fSMed Ismail Bennani
43*f3176f5fSMed Ismail Bennani        self.expect('script dir(ScriptedProcess)',
44*f3176f5fSMed Ismail Bennani                    substrs=["launch"])
45*f3176f5fSMed Ismail Bennani
46