1"""
2Test loading of a kext binary.
3"""
4
5
6
7import lldb
8from lldbsuite.test.decorators import *
9from lldbsuite.test.lldbtest import *
10from lldbsuite.test import lldbutil
11
12
13class LoadKextTestCase(TestBase):
14    NO_DEBUG_INFO_TESTCASE = True
15
16    def test_load_kext(self):
17        """Test that lldb can load a kext binary."""
18
19        # Create kext from YAML.
20        self.yaml2obj("mykext.yaml", self.getBuildArtifact("mykext"))
21
22        target = self.dbg.CreateTarget(self.getBuildArtifact("mykext"))
23
24        self.assertTrue(target.IsValid())
25
26        self.assertEqual(target.GetNumModules(), 1)
27        mod = target.GetModuleAtIndex(0)
28        self.assertEqual(mod.GetFileSpec().GetFilename(), "mykext")
29