summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/lldb/packages/Python/lldbsuite/test/macosx/load-kext/TestLoadKext.py
blob: ec35ce854d830378dc0fd0f531c8ef4cb1d5d648 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
"""
Test loading of a kext binary.
"""



import lldb
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil


class LoadKextTestCase(TestBase):
    NO_DEBUG_INFO_TESTCASE = True

    mydir = TestBase.compute_mydir(__file__)

    def setUp(self):
        TestBase.setUp(self)
        #super(LoadKextTestCase, self).setUp()
        #self._initial_platform = lldb.DBG.GetSelectedPlatform()

    def test_load_kext(self):
        """Test that lldb can load a kext binary."""

        # Create kext from YAML.
        self.yaml2obj("mykext.yaml", self.getBuildArtifact("mykext"))

        target = self.dbg.CreateTarget(self.getBuildArtifact("mykext"))

        self.assertTrue(target.IsValid())

        self.assertEqual(target.GetNumModules(), 1)
        mod = target.GetModuleAtIndex(0)
        self.assertEqual(mod.GetFileSpec().GetFilename(), "mykext")