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']
37 test_results.reverse()
40 for r in test_results:
41 if not r['scenario'] in scenario_results.keys():
42 scenario_results[r['scenario']] = []
43 scenario_results[r['scenario']].append(r)
45 for s, s_result in scenario_results.items():
46 scenario_results[s] = s_result[0:5]
47 for result in scenario_results[s]:
48 result["start_date"] = result["start_date"].split(".")[0]
49 sig_test = result['details']['sig_test']['result']
50 if not sig_test == "" and isinstance(sig_test, list):
51 format_result = sig_test_format(sig_test)
52 if format_result['failures'] > format_result['passed']:
53 result['details']['sig_test']['duration'] = 0
54 result['details']['sig_test']['result'] = format_result
56 nb_step = len(result['details'])
58 for step_name, step_result in result['details'].items():
59 if step_result['duration'] != 0:
61 m, s = divmod(step_result['duration'], 60)
64 m_display += str(int(m)) + "m "
65 step_result['duration_display'] = m_display + str(int(s)) + "s"
67 result['pr_step_ok'] = 0
69 result['pr_step_ok'] = (float(nb_step_ok)/nb_step)*100
72 templateLoader = jinja2.FileSystemLoader(os.path.dirname(os.path.abspath(__file__)))
73 templateEnv = jinja2.Environment( loader=templateLoader )
75 TEMPLATE_FILE = "./template/index-vims-tmpl.html"
76 template = templateEnv.get_template( TEMPLATE_FILE )
78 outputText = template.render( scenario_results = scenario_results, step_order = step_order, installer = installer)
80 with open("./release/master/index-vims-" + installer + ".html", "wb") as fh: