winIDEA SDK
Loading...
Searching...
No Matches
test_get_iterator.py
# This script is licensed under BSD License, see file LICENSE.txt, or search for `License` in the SDK online help.
#
# (c) TASKING Germany GmbH, 2023
import isystem.connect as ic
winidea_id = ''
def test_getIterator():
connMgr = ic.ConnectionMgr()
connMgr.connect(ic.CConnectionConfig().instanceId(winidea_id))
filePath = "../../../targetProjects/cvrgExport.xml"
# Do not load large recording data into memory. Instead, iterate over data with iterator.
covData = ic.CCoverageData2.createInstance(filePath, True)
print(f"Iterating modules in a given coverage data ...")
statisticIterator = covData.getIterator(ic.CCoverageStatistic2.EModule)
numOfFunctions = 0
while statisticIterator.hasNext():
numOfFunctions = numOfFunctions + 1
stat = statisticIterator.next()
print(" Module Name:", stat.getAreaName())
numChildAreas = stat.getNumChildren()
for childAreaIdx in range(numChildAreas):
childStat = stat.getChild(childAreaIdx)
print(" Child name:", childStat.getAreaName())
print(" Child Type:", childStat.getAreaType())
print(" Child execution count:", childStat.getExecutionCount())
covData.closeParser()
if __name__ == "__main__":
test_getIterator()