List items filters flow tests 85/43285/2
authortalig <talig@amdocs.com>
Sun, 22 Apr 2018 08:04:16 +0000 (11:04 +0300)
committertalig <talig@amdocs.com>
Sun, 22 Apr 2018 08:04:16 +0000 (11:04 +0300)
Change-Id: Id843c02e5d328a61e0c6b3e713d962e7edfa197f
Issue-ID: SDC-1213
Signed-off-by: talig <talig@amdocs.com>
openecomp-bdd/features/Onboarding/ListItems/ListItemsFilters.feature [new file with mode: 0644]
openecomp-bdd/features/Onboarding/ListItems/ListItemsFiltersFailures.feature [new file with mode: 0644]
openecomp-bdd/stepDefinitions/General_Steps.js

diff --git a/openecomp-bdd/features/Onboarding/ListItems/ListItemsFilters.feature b/openecomp-bdd/features/Onboarding/ListItems/ListItemsFilters.feature
new file mode 100644 (file)
index 0000000..8b0a232
--- /dev/null
@@ -0,0 +1,86 @@
+Feature: List items with various filters
+
+  Background: Init - create various items in order to test list items filters
+    Given I want to set the user to "cs0008"
+    Given I want to create a VLM
+    Then I want to copy to property "noPermissionDraftVlmId" from response data path "itemId"
+
+    Given I want to create a VLM
+    Then I want to copy to property "noPermissionCertifiedVlmId" from response data path "itemId"
+    And I want to submit this VLM
+
+    Given I want to set the user to "mb1001"
+
+    Given I want to create a VLM
+    Then I want to copy to property "draftVlmId" from response data path "itemId"
+
+    Given I want to create a VLM
+    Then I want to copy to property "certifiedVlmId" from response data path "itemId"
+    And I want to submit this VLM
+
+    Given I want to create a VLM
+    Then I want to copy to property "archivedDraftVlmId" from response data path "itemId"
+    And I want to archive this item
+
+    Given I want to create a VLM
+    Then I want to copy to property "archivedCertifiedVlmId" from response data path "itemId"
+    And I want to submit this VLM
+    And I want to archive this item
+
+    Given I want to create a VSP with onboarding type "NetworkPackage"
+    Then I want to copy to property "npDraftVspId" from response data path "itemId"
+
+    Given I want to create a VSP with onboarding type "Manual"
+    Then I want to copy to property "manualDraftVspId" from response data path "itemId"
+
+  Scenario: List workspace items - active, draft, editable by the user
+    When I want to get path "/items?itemStatus=ACTIVE&versionStatus=Draft&permission=Owner,Contributor"
+
+    Then I want to check that element in the response list with "id" equals to value of saved property "draftVlmId" exists
+    And I want to check that element in the response list with "id" equals to value of saved property "npDraftVspId" exists
+    And I want to check that element in the response list with "id" equals to value of saved property "manualDraftVspId" exists
+
+    But I want to check that element in the response list with "id" equals to value of saved property "noPermissionDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "noPermissionCertifiedVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "certifiedVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "archivedDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "archivedCertifiedVlmId" does not exist
+
+  Scenario: List catalog items - active, certified
+    When I want to get path "/items?itemStatus=ACTIVE&versionStatus=Certified"
+
+    Then I want to check that element in the response list with "id" equals to value of saved property "noPermissionCertifiedVlmId" exists
+    And I want to check that element in the response list with "id" equals to value of saved property "certifiedVlmId" exists
+
+    But I want to check that element in the response list with "id" equals to value of saved property "draftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "npDraftVspId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "manualDraftVspId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "noPermissionDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "archivedDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "archivedCertifiedVlmId" does not exist
+
+  Scenario: List archived certified items
+    When I want to get path "/items?itemStatus=ARCHIVED&versionStatus=Certified"
+
+    Then I want to check that element in the response list with "id" equals to value of saved property "archivedCertifiedVlmId" exists
+
+    But I want to check that element in the response list with "id" equals to value of saved property "archivedDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "noPermissionCertifiedVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "certifiedVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "draftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "npDraftVspId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "manualDraftVspId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "noPermissionDraftVlmId" does not exist
+
+  Scenario: List only active draft manual vsps + vlms owned by the user
+    When I want to get path "/items?itemStatus=ACTIVE&versionStatus=Draft&onboardingMethod=Manual&permission=Owner"
+
+    Then I want to check that element in the response list with "id" equals to value of saved property "draftVlmId" exists
+    And I want to check that element in the response list with "id" equals to value of saved property "manualDraftVspId" exists
+
+    But I want to check that element in the response list with "id" equals to value of saved property "npDraftVspId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "noPermissionDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "noPermissionCertifiedVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "certifiedVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "archivedDraftVlmId" does not exist
+    And I want to check that element in the response list with "id" equals to value of saved property "archivedCertifiedVlmId" does not exist
diff --git a/openecomp-bdd/features/Onboarding/ListItems/ListItemsFiltersFailures.feature b/openecomp-bdd/features/Onboarding/ListItems/ListItemsFiltersFailures.feature
new file mode 100644 (file)
index 0000000..53807af
--- /dev/null
@@ -0,0 +1,24 @@
+Feature: List items with incorrect filter values
+
+  Scenario: Filter by incorrect item type - negative
+    When I want the following to fail with error code "GENERAL_ERROR_REST_ID"
+    Then I want to get path "/items?itemType=bsp"
+
+  Scenario: Filter by incorrect permission - negative
+    When I want the following to fail with error code "GENERAL_ERROR_REST_ID"
+    Then I want to get path "/items?permission=Contributer"
+
+  Scenario: Filter by incorrect version status - negative
+    When I want the following to fail with error code "GENERAL_ERROR_REST_ID"
+    Then I want to get path "/items?versionStatus=Draftt"
+
+  Scenario: Filter by incorrect item status - negative
+    When I want the following to fail with error code "GENERAL_ERROR_REST_ID"
+    Then I want to get path "/items?itemStatus=active"
+
+  Scenario: Filter by incorrect onboarding method - negative
+    When I want the following to fail with error code "GENERAL_ERROR_REST_ID"
+    Then I want to get path "/items?onboardingMethod=heat"
+
+    Then I want to print the context data
+
index bf69d8d..2076366 100644 (file)
@@ -236,6 +236,30 @@ When('I want to load the json content of the entry {string} in the zip {string}
        callback();
 });
 
+/**
+ * @module ResponseData
+ * @description Check that the result list doesn't contain an element with property x which has value
+ * equals to saved property y
+ * @exampleFile ListItemsFilters.feature
+ * @step I want to check that element in the response list with {string} equals to value of saved property {string} does not exist
+ **/
+Then('I want to check that element in the response list with {string} equals to value of saved property {string} does not exist', function (propertyPath, valueProperty) {
+    const results = this.context.responseData.results;
+    assert.equal(results.find(result => this.context[valueProperty] === _.get(result, propertyPath)), undefined);
+});
+
+/**
+ * @module ResponseData
+ * @description Check that the result list contains an element with property x which has value
+ * equals to saved property y
+ * @exampleFile ListItemsFilters.feature
+ * @step I want to check that element in the response list with {string} equals to value of saved property {string} exists
+ **/
+Then('I want to check that element in the response list with {string} equals to value of saved property {string} exists', function(propertyPath, valueProperty) {
+    const results = this.context.responseData.results;
+    assert.notEqual(results.find(result => this.context[valueProperty] === _.get(result, propertyPath)), undefined);
+});
+
 /**
  * @module ResponseData
  * @description Check that the itemId from context exits in result of responseData