本文整理汇总了Python中importlib.machinery.SourceFileLoader.IS_INTRUSIVE方法的典型用法代码示例。如果您正苦于以下问题:Python SourceFileLoader.IS_INTRUSIVE方法的具体用法?Python SourceFileLoader.IS_INTRUSIVE怎么用?Python SourceFileLoader.IS_INTRUSIVE使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类importlib.machinery.SourceFileLoader
的用法示例。
在下文中一共展示了SourceFileLoader.IS_INTRUSIVE方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_unlock
# 需要导入模块: from importlib.machinery import SourceFileLoader [as 别名]
# 或者: from importlib.machinery.SourceFileLoader import IS_INTRUSIVE [as 别名]
def test_unlock(self):
for sample in self.samples:
cfg.startaddress = 0x00000000
mod_name = sample[0]
filepath = sample[1]
try:
module = SourceFileLoader(mod_name, filepath).load_module()
except ImportError:
assert(module)
self.opts.interface = 'file'
self.opts.filename = path.join(
path.dirname(__file__), 'samples/') + mod_name + '.bin'
foundtarget = False
for i, target in enumerate(unlock.targets, 1):
if target.signatures[0].os == module.OS:
foundtarget = [target]
self.opts.target_number = i
# print(module.OS)
self.assertTrue(foundtarget)
self.assertIsNotNone(self.opts.target_number)
module.IS_INTRUSIVE = True
sys.stdout = StringIO() # Suppress output
device, memsize = interface.initialize(self.opts, module)
memspace = memory.MemorySpace(device, memsize)
address, page = unlock.run(self.opts, memspace)
sys.stdout = sys.__stdout__ # Restore output
# print(address & 0x00000fff)
# print(module.offset)
#self.assertEqual(address & 0x00000fff, module.offset)
self.assertEqual(page, module.page)