commit - 1b4e458e9c63f638eb44adeb8d8ff7b7a9b4dd19
commit + 9abfd3c8c2d3087a7ec4467f43eeb1dac3ac1fdb
blob - 4acf73001a4278c39ae6e2747eabfe32be232785
blob + bdfe3aae2b04f2d8e7bf528fc076dd97b9b0eccf
--- src/metrics.c
+++ src/metrics.c
/* FIXME: passed, failed and skipped calculated twice */
double metric_pass_rate(struct tailq_report *report) {
- if (!report)
- return 0;
+ int passed = num_by_status_class(report, STATUS_CLASS_PASS);
+ int failed = num_by_status_class(report, STATUS_CLASS_FAIL);
+ int skipped = num_by_status_class(report, STATUS_CLASS_SKIP);
+ if (!report || (passed + failed + skipped == 0))
+ return 0;
double num = 0;
if (report->suites != NULL) {
- int passed = num_by_status_class(report, STATUS_CLASS_PASS);
- int failed = num_by_status_class(report, STATUS_CLASS_FAIL);
- int skipped = num_by_status_class(report, STATUS_CLASS_SKIP);
num = (double)passed / (double)(passed + failed + skipped) * 100;
} else {
num = 0;