import os
import time
import isystem.connect as ic
winidea_id = ''
def test_cvrg_all_code():
cmgr = ic.ConnectionMgr()
cmgr.connect(ic.CConnectionConfig().instanceId(winidea_id))
debugCtrl = ic.CDebugFacade(cmgr)
debugCtrl.reset()
coverage = ic.CCoverageController2(cmgr, 'sdk_example.trd', 'w')
if not coverage.waitUntilLoaded(5000):
print('isBusy = ', coverage.isBusy())
print("Warning - timeout ocurred when loading coverage document - some data may not be loaded!")
coverage.removeTrigger('coverageTrigger')
triggerIdx = coverage.createTrigger('coverageTrigger')
coverage.select(triggerIdx)
coverage.setScope(triggerIdx, ic.CCoverageController2.EScopeAllDownloadedCode)
coverage.start()
debugCtrl.run()
print('Target is running, coverage is recording data...')
time.sleep(3)
debugCtrl.stop()
coverage.stopSampling()
print('Target stopped, loading coverage data...')
while not coverage.waitUntilLoaded(3000):
print("winIDEA is analyzing coverage recording, please wait ...!")
print(' isBusy = ', coverage.isBusy())
exportCfg = ic.CCoverageExportConfig()
exportFmt = ic.CCoverageXMLExportFormat()
exportCfg.setFileName('coverageSample-1.xml') \
.setFormatter(exportFmt) \
.setExportModules(True) \
.setExportModuleLines(True) \
.setExportSources(True) \
.setExportFunctions(True) \
.setExportFunctionLines(True) \
.setExportFunctionAsm(True) \
.setExportAsm(True) \
.setExportRanges(True)
coverage.exportData(exportCfg)
coverage.closeAll()
if __name__ == "__main__":
test_cvrg_all_code()