From d6dcd318039f5df22441756e506099ff27ee1175 Mon Sep 17 00:00:00 2001
From: Yolande Amate <yolandeamate@gmail.com>
Date: Sun, 9 Jul 2017 01:24:55 +0100
Subject: [PATCH] Update valgrind to use convert_mapping_to_xml()

Change-Id: Idfb06d953cdf074028358a5481586c65553f8e1c
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
---
 jenkins_jobs/modules/publishers.py | 33 +++++++++++++++++-------------
 1 file changed, 19 insertions(+), 14 deletions(-)

diff --git a/jenkins_jobs/modules/publishers.py b/jenkins_jobs/modules/publishers.py
index a14349f55..6aead9226 100644
--- a/jenkins_jobs/modules/publishers.py
+++ b/jenkins_jobs/modules/publishers.py
@@ -5043,21 +5043,26 @@ def valgrind(registry, xml_parent, data):
     for threshold in ['unstable', 'failed']:
         dthreshold = dthresholds.get(threshold, {})
         threshold = threshold.replace('failed', 'fail')
-        XML.SubElement(p, '%sThresholdInvalidReadWrite' % threshold).text \
-            = str(dthreshold.get('invalid-read-write', ''))
-        XML.SubElement(p, '%sThresholdDefinitelyLost' % threshold).text \
-            = str(dthreshold.get('definitely-lost', ''))
-        XML.SubElement(p, '%sThresholdTotal' % threshold).text \
-            = str(dthreshold.get('total', ''))
 
-    XML.SubElement(p, 'failBuildOnMissingReports').text = str(
-        data.get('fail-no-reports', False)).lower()
-    XML.SubElement(p, 'failBuildOnInvalidReports').text = str(
-        data.get('fail-invalid-reports', False)).lower()
-    XML.SubElement(p, 'publishResultsForAbortedBuilds').text = str(
-        data.get('publish-if-aborted', False)).lower()
-    XML.SubElement(p, 'publishResultsForFailedBuilds').text = str(
-        data.get('publish-if-failed', False)).lower()
+        ThresholdInvalidReadWrite = '%sThresholdInvalidReadWrite' % threshold
+        ThresholdDefinitelyLost = '%sThresholdDefinitelyLost' % threshold
+        ThresholdTotal = '%sThresholdTotal' % threshold
+
+        threshold_mapping = [
+            ('invalid-read-write', ThresholdInvalidReadWrite, ''),
+            ('definitely-lost', ThresholdDefinitelyLost, ''),
+            ('total', ThresholdTotal, ''),
+        ]
+        helpers.convert_mapping_to_xml(
+            p, dthreshold, threshold_mapping, fail_required=True)
+
+    mapping = [
+        ('fail-no-reports', 'failBuildOnMissingReports', False),
+        ('fail-invalid-reports', 'failBuildOnInvalidReports', False),
+        ('publish-if-aborted', 'publishResultsForAbortedBuilds', False),
+        ('publish-if-failed', 'publishResultsForFailedBuilds', False),
+    ]
+    helpers.convert_mapping_to_xml(p, data, mapping, fail_required=True)
 
 
 def pmd(registry, xml_parent, data):