aboutsummaryrefslogtreecommitdiffstats
path: root/gui/app/scripts
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2018-03-08 12:18:27 +0000
committerchenjiankun <chenjiankun1@huawei.com>2018-03-08 12:18:27 +0000
commit1d2acc900a695bee5c1d83d7631725e4d8b18df0 (patch)
tree249fcd77d191eaca713d7dc5f3c309e8322c6546 /gui/app/scripts
parent58dd0e8514518e4c266713c1d54ba735b400a5d8 (diff)
Supporting user config task parameters in GUI
JIRA: YARDSTICK-981 We need to add function to enable user to config task parameters in GUI. The way to config must be more friendly. Change-Id: I8746149084f1d554b48ed392f2fef4748e279dfb Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'gui/app/scripts')
-rw-r--r--gui/app/scripts/controllers/projectDetail.controller.js34
-rw-r--r--gui/app/scripts/controllers/taskModify.controller.js63
-rw-r--r--gui/app/scripts/factory/main.factory.js8
3 files changed, 92 insertions, 13 deletions
diff --git a/gui/app/scripts/controllers/projectDetail.controller.js b/gui/app/scripts/controllers/projectDetail.controller.js
index e8468045d..353e02bcf 100644
--- a/gui/app/scripts/controllers/projectDetail.controller.js
+++ b/gui/app/scripts/controllers/projectDetail.controller.js
@@ -439,15 +439,36 @@ angular.module('yardStickGui2App')
$scope.displayTable = false;
$scope.contentInfo = response.result.testcase;
+ $scope.optionalParams = response.result.args;
}
}, function(error) {
- toaster.pop({
- type: 'error',
- title: 'fail',
- body: 'unknow error',
- timeout: 3000
- });
+ mainFactory.errorHandler2(error);
+ })
+ }
+
+
+ function addParamsToTask(){
+ var params = {}
+ angular.forEach($scope.optionalParams, function(value, name){
+ if(value.value){
+ params[name] = value.value;
+ }
+ });
+
+ mainFactory.taskAddParams().put({
+ 'taskId': $scope.newUUID,
+ 'action': 'add_params',
+ 'args': {
+ 'params': params
+ }
+ }).$promise.then(function(resp) {
+ if (resp.status == 1) {
+ } else {
+ mainFactory.errorHandler1(resp);
+ }
+ }, function(error) {
+ mainFactory.errorHandler2(error);
})
}
@@ -530,6 +551,7 @@ angular.module('yardStickGui2App')
function confirmAddCaseOrSuite(content) {
if ($scope.selectType.name == "Test Case") {
addCasetoTask(content);
+ addParamsToTask();
} else {
addSuitetoTask(content);
}
diff --git a/gui/app/scripts/controllers/taskModify.controller.js b/gui/app/scripts/controllers/taskModify.controller.js
index 757d65866..c9672fea8 100644
--- a/gui/app/scripts/controllers/taskModify.controller.js
+++ b/gui/app/scripts/controllers/taskModify.controller.js
@@ -20,6 +20,7 @@ angular.module('yardStickGui2App')
$scope.constructTestSuit = constructTestSuit;
$scope.constructTestCase = constructTestCase;
$scope.getTestDeatil = getTestDeatil;
+ $scope.getTestcaseArgs = getTestcaseArgs;
$scope.confirmToServer = confirmToServer;
$scope.addEnvToTask = addEnvToTask;
}
@@ -46,6 +47,8 @@ angular.module('yardStickGui2App')
getItemIdDetail($scope.taskDetailData.environment_id);
}
+ getTestcaseArgs();
+
}
}, function(error) {
toaster.pop({
@@ -277,7 +280,6 @@ angular.module('yardStickGui2App')
function getTestDeatil() {
-
if ($scope.selectType.name == 'Test Case') {
getTestcaseDetail();
} else {
@@ -307,6 +309,29 @@ angular.module('yardStickGui2App')
}
+ function getTestcaseArgs(){
+ mainFactory.getTestcaseDetail().get({
+ 'testcasename': $scope.taskDetailData.case_name
+ }).$promise.then(function(resp){
+ if(resp.status == 1){
+ $scope.optionalParams = resp.result.args;
+ var params = $scope.taskDetailData.params;
+ if(params){
+ angular.forEach($scope.optionalParams, function(value, name){
+ if(name in params){
+ value.value = params[name];
+ }
+ });
+ }
+ }else{
+ mainFactory.errorHandler1(resp);
+ }
+ }, function(error){
+ mainFactory.errorHandler2(error);
+ });
+ }
+
+
function getTestcaseDetail() {
mainFactory.getTestcaseDetail().get({
'testcasename': $scope.selectCase
@@ -316,15 +341,13 @@ angular.module('yardStickGui2App')
$scope.displayTable = false;
$scope.contentInfo = response.result.testcase;
+ $scope.optionalParams = response.result.args;
+ }else{
+ mainFactory.errorHandler1(response);
}
}, function(error) {
- toaster.pop({
- type: 'error',
- title: 'fail',
- body: 'unknow error',
- timeout: 3000
- });
+ mainFactory.errorHandler2(error);
})
}
@@ -426,12 +449,38 @@ angular.module('yardStickGui2App')
if ($scope.selectCase == 'Test Case' || $scope.taskDetailData.suite == false) {
addCasetoTask(content);
+ addParamsToTask();
} else {
addSuitetoTask(content);
}
}
+ function addParamsToTask(){
+ var params = {}
+ angular.forEach($scope.optionalParams, function(value, name){
+ if(value.value){
+ params[name] = value.value;
+ }
+ });
+
+ mainFactory.taskAddParams().put({
+ 'taskId': $stateParams.taskId,
+ 'action': 'add_params',
+ 'args': {
+ 'params': params
+ }
+ }).$promise.then(function(resp) {
+ if (resp.status == 1) {
+ } else {
+ mainFactory.errorHandler1(resp);
+ }
+ }, function(error) {
+ mainFactory.errorHandler2(error);
+ })
+ }
+
+
function addEnvToTask() {
mainFactory.taskAddEnv().put({
diff --git a/gui/app/scripts/factory/main.factory.js b/gui/app/scripts/factory/main.factory.js
index 7637a9ff3..b36838bdf 100644
--- a/gui/app/scripts/factory/main.factory.js
+++ b/gui/app/scripts/factory/main.factory.js
@@ -214,6 +214,14 @@ angular.module('yardStickGui2App')
}
})
},
+
+ taskAddParams: function() {
+ return $resource(Base_URL + '/api/v2/yardstick/tasks/:taskId', { taskId: "@taskId" }, {
+ 'put': {
+ method: 'PUT'
+ }
+ })
+ },
//delete operate
deleteEnv: function() {
return $resource(Base_URL + '/api/v2/yardstick/environments/:env_id', { env_id: '@env_id' }, {