[ovp-web] Add SUT version number to OVP portal 13/49713/2
authorchenjiankun <chenjiankun1@huawei.com>
Thu, 28 Dec 2017 01:39:07 +0000 (01:39 +0000)
committerchenjiankun <chenjiankun1@huawei.com>
Fri, 29 Dec 2017 06:19:03 +0000 (06:19 +0000)
JIRA: DOVETAIL-572

We currently have a label column in the OVP test result view. This
allows users to attach a custom label field to their results. It is at
the users discretion to fill out this field.
We need a separate SUT version column to track the product version
number being submitted for official review. The field can be left blank
when users upload and share results in a private manner. However, the
OVP portal must check that this new 'SUT version' field is populated
before results are officially submitted for review. An error message
prompting the user to fill out this field if it is blank must be
implemented when users submit results for review.

Change-Id: I1ca915423a56e8173a3a13f1b84b066cf91d9291
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
cvp/3rd_party/static/testapi-ui/components/results/results.html
cvp/3rd_party/static/testapi-ui/components/results/resultsController.js
cvp/opnfv_testapi/resources/test_handlers.py

index 8d7e448..f53023d 100644 (file)
@@ -29,6 +29,7 @@
                 <th>Status</th>
                 <th>Log</th>
                 <th>SUT</th>
+                <th>SUT Version</th>
                 <th class="col-md-2">Operation</th>
                 <th class="col-md-2">Share List</th>
             </tr>
                 <td><a  uib-tooltip="{{ result.id }}" tooltip-placement="top" tooltip-append-to-body="true" ng-click="ctrl.gotoResultDetail(result.id, result._id)">{{ result.id | limitTo:8 }}</a></td>
                 <td>{{ result.owner }}</td>
                 <td>{{ result.filename || "None"}}</td>
-                <td><div class="popover-wrapper"><a editable-theme="bs3" onbeforesave="ctrl.changeLabel(result, $data)" editable-text="result.label"> {{ result.label || "None" }}</a></div></td>
+                <td><div class="popover-wrapper"><a editable-theme="bs3" onbeforesave="ctrl.changeLabel(result, 'label', $data)" editable-text="result.label"> {{ result.label || "None" }}</a></div></td>
                 <td>{{ result.status }}</td>
                 <td><a ng-click="ctrl.downloadLogs(result.id)">logs</a></td>
                 <td><a ng-click="ctrl.gotoSUT(result.id)">info</a></td>
+                <td><div class="popover-wrapper"><a editable-theme="bs3" onbeforesave="ctrl.changeLabel(result, 'sut_label', $data)" editable-text="result.sut_label"> {{ result.sut_label || "None" }}</a></div></td>
                 <td>
                     <div class="btn-group" uib-dropdown>
                         <a id="single-button" type="button" class="btn btn-success cvp-btn medium accent-color regular-button" uib-dropdown-toggle>
index 0b0bbbc..aa593dc 100644 (file)
             });
         }
 
-        function changeLabel(result, data){
-            toggleCheck(result, 'label', data);
+        function changeLabel(result, key, data){
+            toggleCheck(result, key, data);
         }
 
         function toReview(result, value){
-            var resp = confirm('Once you submit a test result for review, it will become readable to all CVP reviewers. Do you want to proceed?');
+            var resp = confirm('Once you submit a test result for review, it will become readable to all OVP reviewers. Do you want to proceed?');
             if(resp){
                 toggleCheck(result, 'status', value);
             }
index 2b5f28c..b28a15d 100644 (file)
@@ -218,6 +218,11 @@ class TestsGURHandler(GenericTestHandler):
                     self.finish_request({'code': 403, 'msg': msg})
                     return
 
+                if not test['sut_label']:
+                    msg = 'Please fill out SUT version before submission'
+                    self.finish_request({'code': 403, 'msg': msg})
+                    return
+
                 query['owner'] = curr_user
                 db_keys.append('owner')