1 from urllib2 import Request, urlopen, URLError
6 def sig_test_format(sig_test):
10 for data_test in sig_test:
11 if data_test['result'] == "Passed":
13 elif data_test['result'] == "Failed":
15 elif data_test['result'] == "Skipped":
17 total_sig_test_result = {}
18 total_sig_test_result['passed'] = nbPassed
19 total_sig_test_result['failures'] = nbFailures
20 total_sig_test_result['skipped'] = nbSkipped
21 return total_sig_test_result
23 installers = ["fuel", "compass", "joid", "apex"]
24 step_order = ["initialisation", "orchestrator", "vIMS", "sig_test"]
26 for installer in installers:
27 request = Request('http://testresults.opnfv.org/test/api/v1/results?case=vims&installer=' + installer)
30 response = urlopen(request)
32 results = json.loads(k)
34 print 'No kittez. Got an error code:', e
36 test_results = results['results']
39 for r in test_results:
40 if not r['version'] in scenario_results.keys():
41 scenario_results[r['version']] = []
42 scenario_results[r['version']].append(r)
44 for s, s_result in scenario_results.items():
45 scenario_results[s] = s_result[0:5]
46 for result in scenario_results[s]:
47 result["start_date"] = result["start_date"].split(".")[0]
48 sig_test = result['details']['sig_test']['result']
49 if not sig_test == "" and isinstance(sig_test, list):
50 format_result = sig_test_format(sig_test)
51 if format_result['failures'] > format_result['passed']:
52 result['details']['sig_test']['duration'] = 0
53 result['details']['sig_test']['result'] = format_result
55 nb_step = len(result['details'])
57 for step_name, step_result in result['details'].items():
58 if step_result['duration'] != 0:
60 m, s = divmod(step_result['duration'], 60)
63 m_display += str(int(m)) + "m "
64 step_result['duration_display'] = m_display + str(int(s)) + "s"
66 result['pr_step_ok'] = 0
68 result['pr_step_ok'] = (float(nb_step_ok)/nb_step)*100
71 templateLoader = jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)))
72 templateEnv = jinja2.Environment( loader=templateLoader )
74 TEMPLATE_FILE = "./template/index-vims-tmpl.html"
75 template = templateEnv.get_template( TEMPLATE_FILE )
77 outputText = template.render( scenario_results = scenario_results, step_order = step_order, installer = installer)
79 with open("./release/master/index-vims-" + installer + ".html", "wb") as fh: