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