diff options
Diffstat (limited to '3rd_party/static/testapi-ui/components/results-report/resultsReportController.js')
-rw-r--r-- | 3rd_party/static/testapi-ui/components/results-report/resultsReportController.js | 83 |
1 files changed, 70 insertions, 13 deletions
diff --git a/3rd_party/static/testapi-ui/components/results-report/resultsReportController.js b/3rd_party/static/testapi-ui/components/results-report/resultsReportController.js index 8cec126..0c99962 100644 --- a/3rd_party/static/testapi-ui/components/results-report/resultsReportController.js +++ b/3rd_party/static/testapi-ui/components/results-report/resultsReportController.js @@ -36,11 +36,13 @@ ctrl.testStatus = 'total'; ctrl.case_list = []; + ctrl.case_list_skip = []; + ctrl.case_list_fail = []; ctrl.data = {}; ctrl.statistics = { - 'total': 0, 'pass': 0, 'fail': 0, - 'mandatory': {'total': 0, 'pass': 0, 'fail': 0, 'area': 0}, - 'optional': {'total': 0, 'pass': 0, 'fail': 0, 'area': 0} + 'total': 0, 'pass': 0, 'fail': 0, 'skip': 0, + 'mandatory': {'total': 0, 'pass': 0, 'fail': 0, 'skip': 0, 'area': 0}, + 'optional': {'total': 0, 'pass': 0, 'fail': 0, 'skip': 0, 'area': 0} }; ctrl.gotoDoc = gotoDoc; @@ -71,6 +73,18 @@ }); } + function extend_skip(case_list_skip) { + angular.forEach(case_list_skip, function(ele){ + ctrl.case_list_skip.push(ele); + }); + } + + function extend_fail(case_list_fail) { + angular.forEach(case_list_fail, function(ele){ + ctrl.case_list_fail.push(ele); + }); + } + function strip(word) { return word.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); } @@ -122,6 +136,7 @@ ctrl.data.mandatory[name].folder = true; ctrl.data.mandatory[name].pass = 0; ctrl.data.mandatory[name].fail = 0; + ctrl.data.mandatory[name].skip = 0; angular.forEach(value.cases, function(sub_case){ ctrl.statistics.total += 1; ctrl.statistics.mandatory.total += 1; @@ -129,7 +144,11 @@ ctrl.data.mandatory[name].pass += 1; ctrl.statistics.mandatory.pass += 1; ctrl.statistics.pass += 1; - }else{ + }else if(ctrl.case_list_skip.indexOf(sub_case) > -1){ + ctrl.data.mandatory[name].skip += 1; + ctrl.statistics.mandatory.skip += 1; + ctrl.statistics.skip += 1; + }else if(ctrl.case_list_fail.indexOf(sub_case) > -1){ ctrl.data.mandatory[name].fail += 1; ctrl.statistics.mandatory.fail += 1; ctrl.statistics.fail += 1; @@ -142,6 +161,7 @@ ctrl.data.optional[name].folder = true; ctrl.data.optional[name].pass = 0; ctrl.data.optional[name].fail = 0; + ctrl.data.optional[name].skip = 0; angular.forEach(value.cases, function(sub_case){ ctrl.statistics.total += 1; ctrl.statistics.optional.total += 1; @@ -149,7 +169,11 @@ ctrl.data.optional[name].pass += 1; ctrl.statistics.optional.pass += 1; ctrl.statistics.pass += 1; - }else{ + }else if(ctrl.case_list_skip.indexOf(sub_case) > -1){ + ctrl.data.optional[name].skip += 1; + ctrl.statistics.optional.skip += 1; + ctrl.statistics.skip += 1; + }else if(ctrl.case_list_fail.indexOf(sub_case) > -1){ ctrl.data.optional[name].fail += 1; ctrl.statistics.optional.fail += 1; ctrl.statistics.fail += 1; @@ -186,15 +210,25 @@ } if(ctrl.version == '2018.01') { - var sub_case_list = get_sub_case_list_2018_01(result_resp.data); + var sub_case_list_total = get_sub_case_list_2018_01(result_resp.data); + var sub_case_list = sub_case_list_total[0]; + var sub_case_list_skip = sub_case_list_total[1]; + var sub_case_list_fail = sub_case_list_total[2]; extend(sub_case_list); + extend_skip(sub_case_list_skip); + extend_fail(sub_case_list_fail); } else if(ctrl.version == '2018.09') { // OVP 2018.09 and later results store all results in a single json structure: // Looping over all test cases of this individual test run angular.forEach(result_resp.data.testcases_list, function(testcase, index){ - var sub_case_list = get_sub_case_list_2018_09(testcase) - extend(sub_case_list) + var sub_case_list_total = get_sub_case_list_2018_09(testcase); + var sub_case_list = sub_case_list_total[0]; + var sub_case_list_skip = sub_case_list_total[1]; + var sub_case_list_fail = sub_case_list_total[2]; + extend(sub_case_list); + extend_skip(sub_case_list_skip); + extend_fail(sub_case_list_fail); }); } @@ -220,19 +254,26 @@ function yardstickPass_2018_01(result) { var case_list = []; + var case_list_skip = []; + var case_list_fail = []; angular.forEach(result.details.results, function(ele){ if(ele.benchmark){ if(ele.benchmark.data.sla_pass == 1){ case_list.push(result.case_name); - return case_list; + } else if(ele.benchmark.data.sla_skip == 1){ + case_list_skip.push(result.case_name); + } else if(ele.benchmark.data.sla_fail == 1){ + case_list_fail.push(result.case_name); } } }); - return case_list; + return [case_list, case_list_skip, case_list_fail]; } function functestPass_2018_01(result){ var case_list = []; + var case_list_skip = []; + var case_list_fail = []; if(result.case_name == 'refstack_defcore'){ angular.forEach(result.details.success, function(ele){ if(strip(ele) == 'tempest.api.identity.v3.test_t'){ @@ -248,24 +289,40 @@ }else{ if(result.criteria == 'PASS'){ case_list.push(result.case_name); + } else if(result.criteria == 'SKIP'){ + case_list_skip.push(result.case_name); + } else if(result.criteria == 'FAIL') { + case_list_fail.push(result.case_name); } } - return case_list; + return [case_list, case_list_skip, case_list_fail]; } function get_sub_case_list_2018_09(result) { var case_list = []; + var case_list_skip = []; + var case_list_fail = []; if(result.sub_testcase.length == 0 && result.result == "PASS") { case_list.push(result.name); } + else if(result.sub_testcase.length == 0 && result.result == "SKIP") { + case_list_skip.push(result.name); + } + else if(result.sub_testcase.length == 0 && result.result == "FAIL") { + case_list_fail.push(result.name); + } else { angular.forEach(result.sub_testcase, function(subtest, index) { if(subtest.result == "PASS") { - case_list.push(subtest.name) + case_list.push(subtest.name); + } else if(subtest.result == "SKIP") { + case_list_skip.push(subtest.name); + } else if(subtest.result == "FAIL") { + case_list_fail.push(subtest.name); } }); } - return case_list; + return [case_list, case_list_skip, case_list_fail]; } function gotoDoc(sub_case){ |