summaryrefslogtreecommitdiffstats
path: root/testapi/opnfv_testapi/ui/components/results-report/partials
diff options
context:
space:
mode:
Diffstat (limited to 'testapi/opnfv_testapi/ui/components/results-report/partials')
-rw-r--r--testapi/opnfv_testapi/ui/components/results-report/partials/editTestModal.html65
-rw-r--r--testapi/opnfv_testapi/ui/components/results-report/partials/fullTestListModal.html13
-rw-r--r--testapi/opnfv_testapi/ui/components/results-report/partials/reportDetails.html87
3 files changed, 165 insertions, 0 deletions
diff --git a/testapi/opnfv_testapi/ui/components/results-report/partials/editTestModal.html b/testapi/opnfv_testapi/ui/components/results-report/partials/editTestModal.html
new file mode 100644
index 0000000..583c9b9
--- /dev/null
+++ b/testapi/opnfv_testapi/ui/components/results-report/partials/editTestModal.html
@@ -0,0 +1,65 @@
+<div class="modal-content">
+ <div class="modal-header">
+ <button type="button" class="close" aria-hidden="true" ng-click="modal.close()">&times;</button>
+ <h4>Edit Test Run Metadata</h4>
+ <p>Make changes to your test metadata.</p>
+ </div>
+ <div class="modal-body">
+ <div class="form-group">
+ <strong>Publicly Shared:</strong>
+ <select ng-model="modal.metaCopy.shared"
+ class="form-control">
+ <option value="true">Yes</option>
+ <option value="">No</option>
+ </select>
+ <br />
+ <strong>Associated Guideline:</strong>
+ <select ng-model="modal.metaCopy.guideline"
+ ng-options="o as o.slice(0, -5) for o in modal.versionList"
+ class="form-control">
+ <option value="">None</option>
+ </select>
+ <br />
+ <strong>Associated Target Program:</strong>
+ <select ng-model="modal.metaCopy.target"
+ class="form-control">
+ <option value="">None</option>
+ <option value="platform">OpenStack Powered Platform</option>
+ <option value="compute">OpenStack Powered Compute</option>
+ <option value="object">OpenStack Powered Object Storage</option>
+ </select>
+ <hr>
+ <strong>Associated Product:</strong>
+ <select ng-options="product as product.name for product in modal.products | arrayConverter | orderBy: 'name' track by product.id"
+ ng-model="modal.selectedProduct"
+ ng-change="modal.getProductVersions()"
+ class="form-control">
+ <option value="">-- No Product --</option>
+ </select>
+
+ <span ng-if="modal.productVersions.length">
+ <strong>Product Version:</strong>
+ <select ng-options="version as version.version for version in modal.productVersions | orderBy: 'version' track by version.id"
+ ng-model="modal.selectedVersion"
+ class="form-control">
+ </select>
+
+ </span>
+
+ </div>
+ <div ng-show="modal.showError" class="alert alert-danger" role="alert">
+ <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
+ <span class="sr-only">Error:</span>
+ {{modal.error}}
+ </div>
+ <div ng-show="modal.showSuccess" class="alert alert-success" role="success">
+ <span class="glyphicon glyphicon-ok" aria-hidden="true"></span>
+ <span class="sr-only">Success:</span>
+ Changes saved successfully.
+ </div>
+ </div>
+ <div class="modal-footer">
+ <button class="btn btn-primary" type="button" ng-click="modal.saveChanges()">Save Changes</button>
+ <button class="btn btn-primary" type="button" ng-click="modal.close()">Close</button>
+ </div>
+</div>
diff --git a/testapi/opnfv_testapi/ui/components/results-report/partials/fullTestListModal.html b/testapi/opnfv_testapi/ui/components/results-report/partials/fullTestListModal.html
new file mode 100644
index 0000000..6db198b
--- /dev/null
+++ b/testapi/opnfv_testapi/ui/components/results-report/partials/fullTestListModal.html
@@ -0,0 +1,13 @@
+<div class="modal-content">
+ <div class="modal-header">
+ <h4>All Passed Tests ({{modal.tests.length}})</h4>
+ </div>
+ <div class="modal-body tests-modal-content">
+ <div class="form-group">
+ <textarea class="form-control" rows="20" id="tests" wrap="off">{{modal.getTestListString()}}</textarea>
+ </div>
+ </div>
+ <div class="modal-footer">
+ <button class="btn btn-primary" type="button" ng-click="modal.close()">Close</button>
+ </div>
+</div>
diff --git a/testapi/opnfv_testapi/ui/components/results-report/partials/reportDetails.html b/testapi/opnfv_testapi/ui/components/results-report/partials/reportDetails.html
new file mode 100644
index 0000000..517e569
--- /dev/null
+++ b/testapi/opnfv_testapi/ui/components/results-report/partials/reportDetails.html
@@ -0,0 +1,87 @@
+<!--
+HTML for each accordion group that separates the status types on the results
+report page.
+-->
+
+<uib-accordion-group is-open="isOpen" is-disabled="ctrl.caps[status].caps.length == 0">
+ <uib-accordion-heading>
+ {{status | capitalize}}
+ <small>
+ (<strong>Total:</strong> {{ctrl.caps[status].caps.length}} capabilities, {{ctrl.caps[status].count}} tests)
+ <span ng-if="ctrl.testStatus !== 'total'">
+ (<strong>{{ctrl.testStatus | capitalize}}:</strong> {{ctrl.getStatusTestCount(status)}} tests)
+ </span>
+ </small>
+ <i class="pull-right glyphicon"
+ ng-class="{'glyphicon-chevron-down': isOpen, 'glyphicon-chevron-right': !isOpen}">
+ </i>
+ </uib-accordion-heading>
+ <ol class="capabilities">
+ <li ng-repeat="capability in ctrl.caps[status].caps | orderBy:'id'"
+ ng-if="ctrl.isCapabilityShown(capability)">
+
+ <a ng-click="showTests = !showTests"
+ title="{{ctrl.guidelineData.capabilities[capability.id].description}}">
+ {{capability.id}}
+ </a>
+ <span ng-class="{'text-success': ctrl.testStatus === 'passed',
+ 'text-danger': ctrl.testStatus === 'not passed',
+ 'text-warning': ctrl.testStatus === 'flagged'}"
+ ng-if="ctrl.testStatus !== 'total'">
+ [{{ctrl.getCapabilityTestCount(capability)}}]
+ </span>
+ <span ng-class="{'text-success': (capability.passedTests.length > 0 &&
+ capability.notPassedTests.length == 0),
+ 'text-danger': (capability.passedTests.length == 0 &&
+ capability.notPassedTests.length > 0),
+ 'text-warning': (capability.passedTests.length > 0 &&
+ capability.notPassedTests.length > 0)}"
+ ng-if="ctrl.testStatus === 'total'">
+ [{{capability.passedTests.length}}/{{capability.passedTests.length +
+ capability.notPassedTests.length}}]
+ </span>
+
+ <ul class="list-unstyled" uib-collapse="!showTests">
+ <!-- Start passed test list -->
+ <li ng-repeat="test in capability.passedTests | orderBy:'toString()'"
+ ng-if="ctrl.isTestShown(test, capability)">
+
+ <span class="glyphicon glyphicon-ok text-success"
+ aria-hidden="true">
+ </span>
+ <span ng-class="{'glyphicon glyphicon-flag text-warning':
+ ctrl.isTestFlagged(test, ctrl.guidelineData.capabilities[capability.id])}"
+ title="{{ctrl.getFlaggedReason(test, ctrl.guidelineData.capabilities[capability.id])}}">
+ </span>
+ {{test}}
+ <span ng-if="ctrl.guidelineData.capabilities[capability.id].tests[test].aliases"> &mdash;
+ <a ng-click="showAliases = !showAliases">[Aliases]</a>
+ <div class="test-detail-report" ng-if="ctrl.guidelineData.capabilities[capability.id].tests[test].aliases && showAliases">
+ <ul><li ng-repeat="alias in ctrl.guidelineData.capabilities[capability.id].tests[test].aliases">{{alias}}</li></ul>
+ </div>
+ </span>
+ </li>
+ <!-- End passed test list -->
+
+ <!-- Start not passed test list -->
+ <li ng-repeat="test in capability.notPassedTests | orderBy:'toString()'"
+ ng-if="ctrl.isTestShown(test, capability)">
+
+ <span class="glyphicon glyphicon-remove text-danger" aria-hidden="true"></span>
+ <span ng-class="{'glyphicon glyphicon-flag text-warning':
+ ctrl.isTestFlagged(test, ctrl.guidelineData.capabilities[capability.id])}"
+ title="{{ctrl.getFlaggedReason(test, ctrl.guidelineData.capabilities[capability.id])}}">
+ </span>
+ {{test}}
+ <span ng-if="ctrl.guidelineData.capabilities[capability.id].tests[test].aliases"> &mdash;
+ <a ng-click="showAliases = !showAliases">[Aliases]</a>
+ <div class="test-detail-report" ng-if="ctrl.guidelineData.capabilities[capability.id].tests[test].aliases && showAliases">
+ <ul><li ng-repeat="alias in ctrl.guidelineData.capabilities[capability.id].tests[test].aliases">{{alias}}</li></ul>
+ </div>
+ </span>
+ </li>
+ <!-- End not passed test list -->
+ </ul>
+ </li>
+ </ol>
+</uib-accordion-group>