aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-bdd/features
diff options
context:
space:
mode:
authorilanap <ilanap@amdocs.com>2018-02-04 17:06:22 +0200
committerAvi Gaffa <avi.gaffa@amdocs.com>2018-02-08 09:30:17 +0000
commit637206b5e05910cc3bdd64bbd35d296ce282524c (patch)
treecec62c6939197229fd69fde997f9ed8d27d654e4 /openecomp-bdd/features
parent20074c4e75e926977b25d57bebf841f44ada12a0 (diff)
Adding BDD cucumber testing component
Change-Id: I4fd7eb798cbc7cad85562453fb0a6f74fd12ff5b Issue-ID: SDC-990 Signed-off-by: ilanap <ilanap@amdocs.com>
Diffstat (limited to 'openecomp-bdd/features')
-rw-r--r--openecomp-bdd/features/Example_Collaboration.feature26
-rw-r--r--openecomp-bdd/features/Example_HEAT.feature22
-rw-r--r--openecomp-bdd/features/Example_ResponseData_CheckAndManipulation.feature22
-rw-r--r--openecomp-bdd/features/Example_Rest_Calls.feature36
-rw-r--r--openecomp-bdd/features/Example_ToscaTranslationFlow.feature48
-rw-r--r--openecomp-bdd/features/Example_VLM.feature46
-rw-r--r--openecomp-bdd/features/Example_VSP.feature60
-rw-r--r--openecomp-bdd/features/TOSCA/CapabilityDataType.feature24
-rw-r--r--openecomp-bdd/features/TOSCA/HeatToToscaTranslation.feature20
-rw-r--r--openecomp-bdd/features/TOSCA/HeatValidation.feature14
10 files changed, 318 insertions, 0 deletions
diff --git a/openecomp-bdd/features/Example_Collaboration.feature b/openecomp-bdd/features/Example_Collaboration.feature
new file mode 100644
index 0000000000..c799efda12
--- /dev/null
+++ b/openecomp-bdd/features/Example_Collaboration.feature
@@ -0,0 +1,26 @@
+Feature: Collaboration Example File
+
+ Background: Init
+ Given I want to create a VLM
+ Scenario: Testing permissions for contributors and Owners
+ Then I want to check user "mb033001" has no permissions on this Item
+
+ When I want to add user "mb0001" as a contributor to this Item
+ Then I want to get the permissions for this Item
+ Then I want to check property "listCount" for value 2
+ Then I want to check user "cs0008" has role "owner" on this Item
+ Then I want to check user "mb0001" has role "contributor" on this Item
+
+ When I want to set the user to "aaaa"
+ Then I want the following to fail
+ When I want to get the permissions for this Item
+
+ When I want to set the user to "mb0001"
+ Then I want the following to fail
+ When I want to change the owner to user "mb0001" on this Item
+
+ When I want to set the user to "cs0008"
+ When I want to change the owner to user "mb0001" on this Item
+ Then I want to get the permissions for this Item
+ Then I want to check user "cs0008" has role "contributor" on this Item
+ Then I want to check user "mb0001" has role "owner" on this Item \ No newline at end of file
diff --git a/openecomp-bdd/features/Example_HEAT.feature b/openecomp-bdd/features/Example_HEAT.feature
new file mode 100644
index 0000000000..9ee67a4dcb
--- /dev/null
+++ b/openecomp-bdd/features/Example_HEAT.feature
@@ -0,0 +1,22 @@
+Feature: Heat Example File
+ Scenario: Test with update for heat file and check for validation warning
+ # Use ONLY during development. Example for running a test with an existing item in order to not create an item each test.
+ # Given Item "c99b775cc0764746b15a32b728c10402" and version Id "f044f9e265ac46c2882cb14c4b1732a5"
+ Given I want to create a VLM
+
+ When I want to create a VSP with onboarding type "NetworkPackage"
+ Then I want to make sure this Item has status "Draft"
+
+ When I want to upload a NetworkPackage for this VSP from path "resources/uploads/BASE_MUX.zip"
+ And I want to process the NetworkPackage file for this VSP
+
+ When I want to download the NetworkPackage for this VSP to path "resources/downloads/base_mux.zip"
+ Then I want to check property "data[0].file" for value "CB_BASE.yaml"
+
+ Then I want to set the input data to:
+ """
+ {"modules":[{"name":"module_1","isBase":false,"yaml":"CB_BASE.yaml"}],"unassigned":[],"artifacts":["MUX_Parameters.env","CB_MUX.yaml"],"nested":[]}
+ """
+ Then I want to update for path "/vendor-software-products/{item.id}/versions/{item.versionId}/orchestration-template-candidate/manifest" with the input data from the context
+ Then I want to process the NetworkPackage file for this VSP
+ Then I want to check property "errors['CB_MUX.yaml'][0].level" for value "WARNING" \ No newline at end of file
diff --git a/openecomp-bdd/features/Example_ResponseData_CheckAndManipulation.feature b/openecomp-bdd/features/Example_ResponseData_CheckAndManipulation.feature
new file mode 100644
index 0000000000..d9d94582ca
--- /dev/null
+++ b/openecomp-bdd/features/Example_ResponseData_CheckAndManipulation.feature
@@ -0,0 +1,22 @@
+Feature: Example for checking response data
+ Scenario: Example Checks
+ # setting some data just for testing purposes
+ Given Response Data:
+ """
+ {
+ "field1" : "string field",
+ "field2" : "true",
+ "field3": "5",
+ "field4" : [{"entry1":"a"},{"entry2":"b"},{"entry3":"c"}]
+ }
+ """
+ # printing out for test purposes
+ Then I want to print the context data
+
+ # running the different options of checking the respone data
+ Then I want to check property "field1" for value "string field"
+ Then I want to check property "field2" to be "true"
+ Then I want to check property "field3" for value 5
+ Then I want to check property "field4" to have length 3
+ Then I want to check property "field4[0].entry1" exists
+ Then I want to check property "field4[0].no_exist" does not exist
diff --git a/openecomp-bdd/features/Example_Rest_Calls.feature b/openecomp-bdd/features/Example_Rest_Calls.feature
new file mode 100644
index 0000000000..e650fede66
--- /dev/null
+++ b/openecomp-bdd/features/Example_Rest_Calls.feature
@@ -0,0 +1,36 @@
+Feature: Example Rest Calls
+ Scenario: Call Rest CRUD
+
+# Following will override the server set in the config.json. Use ONLY during development
+# Given Server host "localhost"
+ Given I want to create a VLM
+ Given I want to create a VSP with onboarding type "Manual"
+
+ # do an update
+ Then I want to get path "/vendor-software-products/{item.id}/versions/{item.versionId}"
+
+ # dealing with getting to the correct input data from the request
+ Then I want to remove "id" from the input data
+ Then I want to remove "version" from the input data
+ Then I want to remove "candidateOnboardingOrigin" from the input data
+ Then I want to remove "onboardingOrigin" from the input data
+ Then I want to remove "onboardingMethod" from the input data
+ Then I want to update the input property "description" with value "updated"
+ Then I want to update for path "/vendor-software-products/{item.id}/versions/{item.versionId}" with the input data from the context
+
+ # do a create
+ Then I want to create input data
+ Then I want to update the input property "name" with a random value
+ Then I want to create for path "/vendor-software-products/{item.id}/versions/{item.versionId}/processes" with the input data from the context
+ Then I want to copy to property "lastProcessId" from response data path "value"
+ # do a delete
+ Then I want to delete for path "/vendor-software-products/{item.id}/versions/{item.versionId}/processes" with the value from saved property "lastProcessId"
+
+ When I want to set property "lastProcessId" to value "NotExisting"
+ Then I want the following to fail
+ When I want to delete for path "/vendor-software-products/{item.id}/versions/{item.versionId}/processes" with the value from saved property "lastProcessId"
+
+ Scenario: Create VLM through commands
+ When I want to set the input data to file "resources/json/createVLM.json"
+ Then I want to update the input property "vendorName" with a random value
+ Then I want to create for path "/vendor-license-models" with the input data from the context
diff --git a/openecomp-bdd/features/Example_ToscaTranslationFlow.feature b/openecomp-bdd/features/Example_ToscaTranslationFlow.feature
new file mode 100644
index 0000000000..4b20cd3404
--- /dev/null
+++ b/openecomp-bdd/features/Example_ToscaTranslationFlow.feature
@@ -0,0 +1,48 @@
+Feature: Tosca Validation Flow
+
+ Background: Init
+ Given I want to create a VLM
+
+ Scenario: Full - Create and submit VSP Network Package and Create VF
+ When I want to create a VSP with onboarding type "NetworkPackage"
+
+ Then I want to upload a NetworkPackage for this VSP from path "resources/uploads/BASE_MUX.zip"
+ And I want to process the NetworkPackage file for this VSP
+
+ Then I want to commit this Item
+ And I want to submit this VSP
+ And I want to package this VSP
+
+ Then I want to make sure this Item has status "Certified"
+
+ Then I want to get the package for this Item to path "resources/downloads/VSPPackage.zip"
+ And I want to compare the content of the entry "Artifacts/CB_BASE.yaml" in the zip "resources/downloads/VSPPackage.zip" with file "resources/yaml/CB_BASE.yaml"
+
+ Then I want to create a VF for this Item
+
+ Scenario: Full - Same flow for different HEAT file
+ When I want to create a VSP with onboarding type "NetworkPackage"
+
+ Then I want to upload a NetworkPackage for this VSP from path "resources/uploads/NEW_NC_with_manifest.zip"
+ And I want to process the NetworkPackage file for this VSP
+
+ Then I want to commit this Item
+ And I want to submit this VSP
+ And I want to package this VSP
+
+ Then I want to get the package for this Item to path "resources/downloads/VSPPackage.zip"
+ Then I want to create a VF for this Item
+
+ Scenario: Test Validation Error
+ When I want to create a VSP with onboarding type "NetworkPackage"
+
+ Then I want to upload a NetworkPackage for this VSP from path "resources/uploads/errorHeat.zip"
+ And I want to process the NetworkPackage file for this VSP
+ And I want to print the context data
+
+ Then I want to check property "errors['first.env'][0].level" for value "ERROR"
+ Then I want to check property "errors['first.env'][0].message" for value "ERROR: [YML1]: Invalid YAML format Problem - [empty yaml]"
+
+ Scenario: yaml to json
+ When I want to load the yaml content of the entry "CB_BASE.yaml" in the zip "resources/uploads/BASE_MUX.zip" to context
+ Then I want to check property "parameters.vnf_name.description" for value "Unique name for this VF instance" \ No newline at end of file
diff --git a/openecomp-bdd/features/Example_VLM.feature b/openecomp-bdd/features/Example_VLM.feature
new file mode 100644
index 0000000000..f4093ff07e
--- /dev/null
+++ b/openecomp-bdd/features/Example_VLM.feature
@@ -0,0 +1,46 @@
+Feature: VLM Example File
+ Scenario: VLM Defaults
+
+ When I want to create a VLM
+ Then I want to make sure this Item has status "Draft"
+ When I want to submit this VLM
+ Then I want to make sure this Item has status "Certified"
+ Then I want to create a new version for this Item
+
+ Scenario: Testing revisions with VLM
+ When I want to create a VLM
+
+ When I want to get path "/items/{item.id}/versions/{item.versionId}/revisions"
+ Then I want to check property "listCount" for value 1
+
+ # example creating input data
+ Then I want to create input data
+ Then I want to update the input property "name" with a random value
+ Then I want to update the input property "type" with value "Universal"
+ Then I want to create for path "/vendor-license-models/{item.id}/versions/{item.versionId}/license-key-groups" with the input data from the context
+ Then I want to copy to property "lastProcessId" from response data path "value"
+ Then I want to commit this Item
+
+ Then I want to get path "/items/{item.id}/versions/{item.versionId}/revisions"
+ Then I want to check property "listCount" for value 2
+ Then I want to copy to property "setRevision" from response data path "results[1].id"
+
+ When I want to revert this Item to the revision with the value from saved property "setRevision"
+ Then I want to get path "/items/{item.id}/versions/{item.versionId}/revisions"
+ Then I want to check property "listCount" for value 2
+
+ When I want to get path "/vendor-license-models/{item.id}/versions/{item.versionId}/license-key-groups"
+ Then I want to check property "listCount" for value 0
+
+ Then I want to create input data
+ Then I want to update the input property "name" with a random value
+ Then I want to update the input property "type" with value "Universal"
+ Then I want to create for path "/vendor-license-models/{item.id}/versions/{item.versionId}/license-key-groups" with the input data from the context
+ Then I want to copy to property "newLKG" from response data path "value"
+ Then I want to delete for path "/vendor-license-models/{item.id}/versions/{item.versionId}/license-key-groups" with the value from saved property "newLKG"
+
+ When I want to set property "NotExisting" to value "NotExisting"
+ Then I want the following to fail with error code "GENERAL_ERROR_REST_ID"
+ Then I want to revert this Item to the revision with the value from saved property "NotExisting"
+ Then I want to revert this Item to the revision with the value from saved property "setRevision"
+
diff --git a/openecomp-bdd/features/Example_VSP.feature b/openecomp-bdd/features/Example_VSP.feature
new file mode 100644
index 0000000000..5cffa585c5
--- /dev/null
+++ b/openecomp-bdd/features/Example_VSP.feature
@@ -0,0 +1,60 @@
+Feature: VSP Example File
+
+ Background: Init
+ Given I want to create a VLM
+
+ Scenario: Create and submit VSP Network Package
+ When I want to create a VSP with onboarding type "NetworkPackage"
+ Then I want to make sure this Item has status "Draft"
+
+ When I want to upload a NetworkPackage for this VSP from path "resources/uploads/BASE_MUX.zip"
+ And I want to process the NetworkPackage file for this VSP
+
+ Then I want to commit this Item
+ And I want to submit this VSP
+ And I want to package this VSP
+
+ Then I want to make sure this Item has status "Certified"
+ When I want to get the package for this Item to path "resources/downloads/VSPPackage.zip"
+ Then I want to compare the content of the entry "Artifacts/CB_BASE.yaml" in the zip "resources/downloads/VSPPackage.zip" with file "resources/yaml/CB_BASE.yaml"
+ When I want to load the yaml content of the entry "Artifacts/CB_BASE.yaml" in the zip "resources/downloads/VSPPackage.zip" to context
+ Then I want to check property "parameters.vnf_name.description" for value "Unique name for this VF instance"
+ When I want to load the json content of the entry "Artifacts/MANIFEST.json" in the zip "resources/downloads/VSPPackage.zip" to context
+ Then I want to check property "description" for value "for testing"
+ Scenario: Create VSP Manual
+ When I want to create a VSP with onboarding type "Manual"
+ Then I want to make sure this Item has status "Draft"
+
+ When I want to create a VSP with onboarding type "Manual"
+ Then I want to get path "/vendor-software-products/{item.id}/versions/{item.versionId}"
+
+ When I want to get path "/vendor-software-products/{item.id}/versions/{item.versionId}/components"
+ Then I want to check property "listCount" for value 0
+
+ When I want to add a component
+ Then I want to get path "/vendor-software-products/{item.id}/versions/{item.versionId}/components"
+ Then I want to check property "listCount" for value 1
+
+ Then I want the following to fail with error code "VSP_VFC_COUNT_EXCEED"
+ When I want to add a component
+
+ Then I want to commit this Item
+ Then I want the following to fail
+ When I want to submit this VSP
+
+
+ Scenario: VSP Questionnaire Examples
+ Given I want to create a VSP with onboarding type "Manual"
+
+ When I want to get the questionnaire for this item
+
+ When I want to add a component
+ Then I want to get path "/vendor-software-products/{item.id}/versions/{item.versionId}/components"
+ Then I want to check property "listCount" for value 1
+
+ Then I want to get the questionnaire for this item
+ And I want to update this questionnaire with value "15" for property "general/storageDataReplication/storageReplicationSize"
+ And I want to update this questionnaire
+
+ When I want to get the questionnaire for this item
+ Then I want to check this questionnaire has value "15" for property "general/storageDataReplication/storageReplicationSize" \ No newline at end of file
diff --git a/openecomp-bdd/features/TOSCA/CapabilityDataType.feature b/openecomp-bdd/features/TOSCA/CapabilityDataType.feature
new file mode 100644
index 0000000000..64a0377db5
--- /dev/null
+++ b/openecomp-bdd/features/TOSCA/CapabilityDataType.feature
@@ -0,0 +1,24 @@
+Feature: Tosca Validation Flow
+
+ Background: Init
+ Given I want to create a VLM
+
+ Scenario: Test Capability type in service template
+ When I want to create a VSP with onboarding type "NetworkPackage"
+
+ Then I want to upload a NetworkPackage for this VSP from path "resources/uploads/zipWithExternalPort.zip"
+ And I want to process the NetworkPackage file for this VSP
+
+ Then I want to commit this Item
+ And I want to submit this VSP
+ And I want to package this VSP
+
+ Then I want to get the package for this Item to path "resources/downloads/VSPPackage.zip"
+ And I want to compare the content of the entry "Definitions/Nested_FSB1ServiceTemplate.yaml" in the zip "resources/downloads/VSPPackage.zip" with file "resources/yaml/Nested_FSB1ServiceTemplate.yaml"
+
+ Then I want to create a VF for this Item
+
+ #And I want to load the yaml content of the entry "Definitions/Nested_FSB1ServiceTemplate
+ # .yaml" in the zip "resources/downloads/VSPPackage.zip" to context
+ #And I want to check property "topology_template.node_templates.FSB1_FSB1_OAM.capabilities"
+ # for value { port_mirroring: { properties: { connection_point: [Object] } } } \ No newline at end of file
diff --git a/openecomp-bdd/features/TOSCA/HeatToToscaTranslation.feature b/openecomp-bdd/features/TOSCA/HeatToToscaTranslation.feature
new file mode 100644
index 0000000000..29d87cd2c2
--- /dev/null
+++ b/openecomp-bdd/features/TOSCA/HeatToToscaTranslation.feature
@@ -0,0 +1,20 @@
+Feature: Tosca Validation Flow
+
+ Background: Init
+ Given I want to create a VLM
+
+ Scenario: Full - Create and submit VSP Network Package and Create VF
+ When I want to create a VSP with onboarding type "NetworkPackage"
+
+ Then I want to upload a NetworkPackage for this VSP from path "resources/uploads/BASE_MUX.zip"
+ And I want to process the NetworkPackage file for this VSP
+
+ Then I want to commit this Item
+ And I want to submit this VSP
+ And I want to package this VSP
+
+ Then I want to make sure this Item has status "Certified"
+
+ Then I want to get the package for this Item to path "resources/downloads/VSPPackage.zip"
+
+ Then I want to create a VF for this Item
diff --git a/openecomp-bdd/features/TOSCA/HeatValidation.feature b/openecomp-bdd/features/TOSCA/HeatValidation.feature
new file mode 100644
index 0000000000..69d6093776
--- /dev/null
+++ b/openecomp-bdd/features/TOSCA/HeatValidation.feature
@@ -0,0 +1,14 @@
+Feature: Tosca Validation Flow
+
+ Background: Init
+ Given I want to create a VLM
+
+ Scenario: Test Validation Error
+ When I want to create a VSP with onboarding type "NetworkPackage"
+
+ Then I want to upload a NetworkPackage for this VSP from path "resources/uploads/errorHeat.zip"
+ And I want to process the NetworkPackage file for this VSP
+ And I want to print the context data
+
+ Then I want to check property "errors['first.env'][0].level" for value "ERROR"
+ Then I want to check property "errors['first.env'][0].message" for value "ERROR: [YML1]: Invalid YAML format Problem - [empty yaml]" \ No newline at end of file