bug fix: Rally duration not correct due to result format change
[releng.git] / utils / test / result_collection_api / dashboard / functest2Dashboard.py
index 3f4e1a2..379b932 100644 (file)
@@ -117,12 +117,15 @@ def format_vIMS_for_dashboard(results):
             # Calculate nb of tests run and nb of tests failed
             # vIMS_results = get_vIMSresults(vIMS_test)
             # print vIMS_results
-            if data_test['result'] == "Passed":
-                nbTests += 1
-            elif data_test['result'] == "Failed":
-                nbFailures += 1
-            elif data_test['result'] == "Skipped":
-                nbSkipped += 1
+            try:
+                if data_test['result'] == "Passed":
+                    nbTests += 1
+                elif data_test['result'] == "Failed":
+                    nbFailures += 1
+                elif data_test['result'] == "Skipped":
+                    nbSkipped += 1
+            except:
+                nbTests = 0
 
         new_element.append({'x': data['creation_date'],
                             'y1': nbTests,
@@ -149,10 +152,13 @@ def format_vIMS_for_dashboard(results):
             nbTestsOK = 0
             nbTestsKO = 0
 
-            if data_test['result'] == "Passed":
-                nbTestsOK += 1
-            elif data_test['result'] == "Failed":
-                nbTestsKO += 1
+            try:
+                if data_test['result'] == "Passed":
+                    nbTestsOK += 1
+                elif data_test['result'] == "Failed":
+                    nbTestsKO += 1
+            except:
+                nbTestsOK = 0
 
             nbTests += nbTestsOK + nbTestsKO
             nbFailures += nbTestsKO
@@ -213,6 +219,25 @@ def format_Tempest_for_dashboard(results):
                       'data_set': [{'Run': nbTests,
                                     'Failed': nbFailures}]})
 
+    # Graph 4: (Success rate)=f(time)
+    # ***************************************
+    new_element = []
+    for data in results:
+        try:
+            diff = (int(data['details']['tests']) - int(data['details']['failures']))
+            success_rate = 100*diff/int(data['details']['tests'])
+        except:
+            success_rate = 0
+
+        new_element.append({'x': data['creation_date'],
+                            'y1': success_rate})
+
+    test_data.append({'name': "Tempest success rate",
+                      'info': {'type': "graph",
+                               'xlabel': 'time',
+                               'y1label': 'Success rate'},
+                      'data_set': new_element})
+
     return test_data
 
 
@@ -347,7 +372,7 @@ def format_Rally_for_dashboard(results):
     # ********************************
     new_element = []
     for data in results:
-        summary_cursor = len(data)
+        summary_cursor = len(data['details']) - 1
         new_element.append({'x': data['creation_date'],
                             'y': int(data['details'][summary_cursor]['summary']['duration'])})