aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsheetalm <sheetal.mudholkar@amdocs.com>2018-03-20 12:25:00 +0530
committerVitaly Emporopulo <Vitaliy.Emporopulo@amdocs.com>2018-03-28 12:12:29 +0000
commit65029c3dfc0f876284489009a01252e1088eac03 (patch)
treed7692d0bb6bf699e2e47265c349f5bbe70be402f
parentd8cdf450a8e4c7f83b5267228a6f7a38b5ad595d (diff)
Activity Spec Service - Flow Test
Change in URL and correct steps Fixed review comments Flow tests for Activity Spec Currently the tests are commented since Activity Spec is not build and deployed as of now as part of onboarding Change-Id: I6d509ccfa88619f2d9574932f0315a3459a6e0b7 Issue-ID: SDC-1048 Signed-off-by: sheetalm <sheetal.mudholkar@amdocs.com>
-rw-r--r--openecomp-bdd/config.json2
-rw-r--r--openecomp-bdd/features/ActivitySpec/TestCreate.feature70
-rw-r--r--openecomp-bdd/features/ActivitySpec/TestInvalidStatusTransition.feature29
-rw-r--r--openecomp-bdd/resources/json/createActivitySpec.json17
-rw-r--r--openecomp-bdd/stepDefinitions/ActivitySpec_steps.js47
5 files changed, 164 insertions, 1 deletions
diff --git a/openecomp-bdd/config.json b/openecomp-bdd/config.json
index 38063552ca..e1907a2ae6 100644
--- a/openecomp-bdd/config.json
+++ b/openecomp-bdd/config.json
@@ -11,6 +11,6 @@
},
"activity_spec" : {
"port" : 8080,
- "prefix" : "sdc1/feProxy/activityspec-api/v1"
+ "prefix" : "activity-spec-api/v1.0"
}
} \ No newline at end of file
diff --git a/openecomp-bdd/features/ActivitySpec/TestCreate.feature b/openecomp-bdd/features/ActivitySpec/TestCreate.feature
new file mode 100644
index 0000000000..accae6ad11
--- /dev/null
+++ b/openecomp-bdd/features/ActivitySpec/TestCreate.feature
@@ -0,0 +1,70 @@
+#Feature: ActivitySpec Flow - Test Create Activity Spec
+#
+#Given Default prefix "activity_spec"
+#
+# # SDC-6350
+# Scenario: Test Create Activity Spec functionality
+# #Create ActivitySpec
+# When I want to set the input data to file "resources/json/createActivitySpec.json"
+# Then I want to update the input property "name" with a random value
+# When I want to create an ActivitySpec
+# #Check id and versionId returned in response
+# Then I want to check property "id" exists
+# And I want to check property "versionId" exists
+#
+# #List ActivitySpec
+# And I want to list ActivitySpecs with status "Draft"
+# And I want to check property "listCount" exists
+#
+# #Get ActivitySpec and verify its status
+# And I want to get the ActivitySpec for the current item
+# And I want to check property "status" for value "Draft"
+#
+# #Certify and Get ActivitySpec and verify its status
+# And I want to call action "CERTIFY" on this ActivitySpec item
+# And I want to get the ActivitySpec for the current item
+# And I want to check property "status" for value "Certified"
+#
+# #Deprecate and Get ActivitySpec and verify its status
+# And I want to call action "DEPRECATE" on this ActivitySpec item
+# And I want to get the ActivitySpec for the current item
+# And I want to check property "status" for value "Deprecated"
+#
+# #Delete and Get ActivitySpec and verify its status
+# And I want to call action "DELETE" on this ActivitySpec item
+# And I want to get the ActivitySpec for the current item
+# And I want to check property "status" for value "Deleted"
+#
+# #Pass Invalid Id to Get and verify error code
+# Then I want to set property "item.id" to value "invalidId"
+# Then I want the following to fail with error code "ACTIVITYSPEC_NOT_FOUND"
+# And I want to get the ActivitySpec for the current item
+#
+# # SDC-6353
+# Scenario: Test Create Activity Spec With Duplicate Name
+# #Create ActivitySpec with name "test"
+# When I want to set the input data to file "resources/json/createActivitySpec.json"
+# Then I want to update the input property "name" with value "test"
+# When I want to create an ActivitySpec
+# Then I want to check property "id" exists
+# And I want to check property "versionId" exists
+#
+# #Again Create ActivitySpec with name "test" and verify error code
+# When I want to set the input data to file "resources/json/createActivitySpec.json"
+# Then I want to update the input property "name" with value "test"
+# Then I want the following to fail with error code "UNIQUE_VALUE_VIOLATION"
+# When I want to create an ActivitySpec
+#
+# # SDC-6354
+# Scenario: Test Create Activity Spec With Invalid Name Format
+# When I want to set the input data to file "resources/json/createActivitySpec.json"
+# Then I want to update the input property "name" with value "test!@"
+# Then I want the following to fail with error code "FIELD_VALIDATION_ERROR_ERR_ID"
+# When I want to create an ActivitySpec
+#
+# # SDC-6355
+# Scenario: Test Create Activity Spec With Null/Blank Name
+# When I want to set the input data to file "resources/json/createActivitySpec.json"
+# Then I want to update the input property "name" with value ""
+# Then I want the following to fail with error code "FIELD_VALIDATION_ERROR_ERR_ID"
+# When I want to create an ActivitySpec \ No newline at end of file
diff --git a/openecomp-bdd/features/ActivitySpec/TestInvalidStatusTransition.feature b/openecomp-bdd/features/ActivitySpec/TestInvalidStatusTransition.feature
new file mode 100644
index 0000000000..1a94635a49
--- /dev/null
+++ b/openecomp-bdd/features/ActivitySpec/TestInvalidStatusTransition.feature
@@ -0,0 +1,29 @@
+#Feature: ActivitySpec Flow
+#
+#Given Default prefix "activity_spec"
+#
+# Scenario: Test Invalid Status Transition for Activity Spec
+# #Create Activity Spec
+# When I want to set the input data to file "resources/json/createActivitySpec.json"
+# Then I want to update the input property "name" with a random value
+# When I want to create an ActivitySpec
+# Then I want to check property "id" exists
+# And I want to check property "versionId" exists
+#
+# #Get Activity Spec and verify status
+# When I want to get the ActivitySpec for the current item
+# Then I want to check property "status" for value "Draft"
+#
+# #Deprecate "Draft" activity status and verify error code
+# Then I want the following to fail with error code "STATUS_NOT_CERTIFIED"
+# When I want to call action "DEPRECATE" on this ActivitySpec item
+#
+# #Delete "Draft" activity spec and verify error code
+# Then I want the following to fail with error code "STATUS_NOT_DEPRECATED"
+# When I want to call action "DELETE" on this ActivitySpec item
+#
+# #Certify activity spec
+# When I want to call action "CERTIFY" on this ActivitySpec item
+# #Certify "certified" activity spec and verify error code
+# Then I want the following to fail with error code "STATUS_NOT_DRAFT"
+# When I want to call action "CERTIFY" on this ActivitySpec item
diff --git a/openecomp-bdd/resources/json/createActivitySpec.json b/openecomp-bdd/resources/json/createActivitySpec.json
new file mode 100644
index 0000000000..8d5fc16f72
--- /dev/null
+++ b/openecomp-bdd/resources/json/createActivitySpec.json
@@ -0,0 +1,17 @@
+{
+ "name": "RANDOM",
+ "description": "Start Server",
+ "categoryList": [
+ "Server"
+ ],
+ "inputParameters": [{
+ "name": "host",
+ "type": "string",
+ "value": "10.1.2.3"
+ }],
+ "outputParameters": [{
+ "name": "status",
+ "type": "string",
+ "value": "started"
+ }]
+} \ No newline at end of file
diff --git a/openecomp-bdd/stepDefinitions/ActivitySpec_steps.js b/openecomp-bdd/stepDefinitions/ActivitySpec_steps.js
new file mode 100644
index 0000000000..7fe8ddf201
--- /dev/null
+++ b/openecomp-bdd/stepDefinitions/ActivitySpec_steps.js
@@ -0,0 +1,47 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+const {Then, When} = require('cucumber');
+const assert = require('assert');
+const util = require('./Utils.js');
+const _ = require('lodash');
+
+When('I want to create an ActivitySpec', function () {
+ let path = '/activity-spec';
+ return util.request(this.context, 'POST', path, this.context.inputData, false, 'activity_spec').then((result)=> {
+ this.context.item = {id : result.data.id, versionId: result.data.versionId};
+ this.context.activityspec = {id : result.data.id, versionId: result.data.versionId};
+ });
+});
+
+When('I want to list ActivitySpecs with status {string}', function (string) {
+ let path = '/activity-spec?status='+string;
+ return util.request(this.context, 'GET', path, null, false, 'activity_spec').then((result)=> {
+ this.context.listCount = result.data.listCount;
+ });
+});
+
+When('I want to get the ActivitySpec for the current item', function () {
+ let path = '/activity-spec/'+ this.context.item.id+'/versions/'+this.context.item.versionId ;
+ return util.request(this.context, 'GET', path, null, false, 'activity_spec').then((result)=> {
+ });
+});
+
+Then('I want to call action {string} on this ActivitySpec item', function(string) {
+ let path = '/activity-spec/'+ this.context.item.id+'/versions/'+this.context.item.versionId+'/actions' ;
+ let inputData = JSON.parse('{"action" : "' +string+ '"}');
+ return util.request(this.context, 'PUT', path, inputData, false, 'activity_spec')
+}); \ No newline at end of file