[Coverage] Reset criterion on it's recreation
BZ: 115218
The script was not handling criterion recreation (usually on PFW restart).
Reset criterion on it's recreation.
Change-Id: I169717c1c62f89ce81b21909f3ee4b981d5e91d8
Signed-off-by: Kevin Rocard <kevinx.rocard@intel.com>
Reviewed-on: http://android.intel.com:8080/112713
Reviewed-by: Denneulin, Guillaume <guillaume.denneulin@intel.com>
Reviewed-by: Gonzalve, Sebastien <sebastien.gonzalve@intel.com>
Reviewed-by: cactus <cactus@intel.com>
Tested-by: Dixon, CharlesX <charlesx.dixon@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
diff --git a/tools/coverage.py b/tools/coverage.py
index 4f87b27..9ce94e6 100755
--- a/tools/coverage.py
+++ b/tools/coverage.py
@@ -761,12 +761,22 @@
" with current state: " + str(currentcriterionStateList) +
", possible states:" + str(criterionStateList))
- self.criteria.addChild(Criterion(
+ try:
+ self.criteria.addChild(Criterion(
criterionName,
criterionIsInclusif,
criterionStateList,
currentcriterionStateList
))
+ except self.criteria.DuplicatedCriterionError as ex:
+ logger.debug(ex)
+ logger.warning("Reseting criterion %s. Did you reset the PFW ?" % criterionName)
+ self.criteria.operationOnChild(
+ [criterionName],
+ lambda criterion: criterion.reset()
+ )
+
+
def _changingCriterion(self, matchChangingCriterion):
# Unpack