summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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