From a6ea7123641b70d7a7cacaa47851b5e10c79e311 Mon Sep 17 00:00:00 2001 From: jeverett Date: Wed, 22 Aug 2018 13:41:01 -0400 Subject: [PATCH 1/5] Adding scenarios to cluster.feature Tendrl-bug-id: #1058 Signed-off-by: Josh Everett --- test/behavior/tendrl/cluster.feature | 92 +++++++++++++++++++++++++++- 1 file changed, 91 insertions(+), 1 deletion(-) diff --git a/test/behavior/tendrl/cluster.feature b/test/behavior/tendrl/cluster.feature index edc9731b..5ca1e971 100644 --- a/test/behavior/tendrl/cluster.feature +++ b/test/behavior/tendrl/cluster.feature @@ -1 +1,91 @@ -Feature: CLUSTER \ No newline at end of file +Feature: CLUSTER + + Scenario: Import a cluster + Given User is on "clusters" page + When User should see the "import" button + And User clicks on "import" button + Then User sees the "import-clusters" page + + Scenario: Unmanage a cluster + Given User is on "clusters" page + When User clicks on cluster dropdown + And User clicks on unmanage button + And User sees "Unmanage Cluster" dialogue box + And User clicks on "unmanage" button + Then User should see "unmanage cluster" "task page" + And User closes "task page" + And User sees cluster is unmanaged + + Scenario: Naming an imported cluster + Given User is on "clusters" page + And User should see the "import" button + And User clicks on "import" button + And User sees the "import-clusters" page + When User enters cluster name + And User clicks on "import" button + Then User sees "task submitted" page + And User clicks on "close" button + Then User sees the "cluster" page + And User sees name in cluster list view + + Scenario: Filter by valid cluster name + Given User is on "clusters" page + When User filters by a "valid" cluster name + Then User should see the cluster name + + Scenario: Filter by invalid cluster name + Given User is on "clusters" page + When User filters by an "invalid" cluster name + Then User should see no clusters + + Scenario: Cluster status Icon in list view + Given User is on "clusters" page + When I see "cluster" list view available + Then I should see the Cluster status Icon in list view + + Scenario: Cluster name in list view + Given User is on "clusters" page + When I see "cluster" list view available + And I should see the hyperlink on Cluster Name + And I click on Cluster name + Then I should see the object detail view + + Scenario: Cluster version in list view + Given User is on "clusters" page + When I see "cluster" list view available + And I should see the hyperlink on Cluster Name + And I click on Cluster name + Then I should see the object detail view + + Scenario: Hosts in list view + Given User is on "clusters" page + When I see "cluster" list view available + And I should see the hyperlink on Hosts number + And I click on the Number + Then I should see the "cluster-hosts" page + + Scenario: Cluster options dropdown is clicked + Given User is on "clusters" page + And User opens the clusters page + When User clicks cluster dropdown + Then The cluster names are listed + + Scenario: Sort the Clusters by Name + Given User is on "clusters" page + When User should select "name" from the dropdownzz + Then User should see the List view sorted on basis of "name" + + Scenario: Sort the Clusters by Status + Given User is on "clusters" page + When User should select "status" from the dropdown + Then User should see the List view sorted on basis of "status" + + Scenario: Sort the Clusters by Cluster Version + Given User is on "clusters" page + When User should select "status" from the dropdown + Then User should see the List view sorted on basis of "cluster version" + + Scenario: Sort the Clusters by Managed + Given User is on "clusters" page + When User should select "utilization" from the dropdown + Then User should see the List view sorted on basis of "managed" From d0b2790634bc680414c8be81db4bca102083b977 Mon Sep 17 00:00:00 2001 From: jeverett Date: Thu, 23 Aug 2018 13:57:23 -0400 Subject: [PATCH 2/5] Changes to cluster.feature to reflect requested changes --- test/behavior/tendrl/cluster.feature | 79 ++++++++++++---------------- 1 file changed, 34 insertions(+), 45 deletions(-) diff --git a/test/behavior/tendrl/cluster.feature b/test/behavior/tendrl/cluster.feature index 5ca1e971..4a0e2efc 100644 --- a/test/behavior/tendrl/cluster.feature +++ b/test/behavior/tendrl/cluster.feature @@ -1,78 +1,67 @@ Feature: CLUSTER - Scenario: Import a cluster - Given User is on "clusters" page + Scenario: User views available cluster + Given User is on "cluster list" page + Then User sees one or more clusters available + + Scenario: Import Cluster page should be available + Given User is on "cluster list" page + And User has at least one "unmanaged" cluster When User should see the "import" button And User clicks on "import" button Then User sees the "import-clusters" page Scenario: Unmanage a cluster - Given User is on "clusters" page - When User clicks on cluster dropdown - And User clicks on unmanage button - And User sees "Unmanage Cluster" dialogue box + Given User is on "cluster list" page + And User has at least one "managed" cluster + When User clicks on kebab menu And User clicks on "unmanage" button - Then User should see "unmanage cluster" "task page" - And User closes "task page" - And User sees cluster is unmanaged - - Scenario: Naming an imported cluster - Given User is on "clusters" page - And User should see the "import" button - And User clicks on "import" button - And User sees the "import-clusters" page - When User enters cluster name - And User clicks on "import" button - Then User sees "task submitted" page - And User clicks on "close" button - Then User sees the "cluster" page - And User sees name in cluster list view + And User sees "Unmanage Cluster" dialog box + And User clicks on "unmanage" button + Then User sees "Cluster Task" dialog box + And User closes "Cluster Tast" dialog box + And User sees that cluster is unmanaged Scenario: Filter by valid cluster name - Given User is on "clusters" page + Given User is on "cluster list" page + And User has at least one "managed" cluster When User filters by a "valid" cluster name Then User should see the cluster name Scenario: Filter by invalid cluster name - Given User is on "clusters" page + Given User is on "cluster list" page + And User has at least one "managed" cluster When User filters by an "invalid" cluster name Then User should see no clusters Scenario: Cluster status Icon in list view - Given User is on "clusters" page - When I see "cluster" list view available - Then I should see the Cluster status Icon in list view + Given User is on "cluster list" page + And User has at least one "managed" cluster + Then User should see the Cluster Status Icon Scenario: Cluster name in list view Given User is on "clusters" page - When I see "cluster" list view available - And I should see the hyperlink on Cluster Name - And I click on Cluster name - Then I should see the object detail view - - Scenario: Cluster version in list view - Given User is on "clusters" page - When I see "cluster" list view available - And I should see the hyperlink on Cluster Name - And I click on Cluster name - Then I should see the object detail view + And User has at least one "managed" cluster + And User sees the hyperlink on "Cluster Name" + When User clicks on "Cluster Name" + Then User should see the "cluster hosts" page Scenario: Hosts in list view - Given User is on "clusters" page - When I see "cluster" list view available - And I should see the hyperlink on Hosts number - And I click on the Number - Then I should see the "cluster-hosts" page + Given User is on "clusters" page + And User has at least one "managed" cluster + And User sees the hyperlink on "Host Number" + When User clicks on "Host Number" + Then User should see the "hosts" dialog box Scenario: Cluster options dropdown is clicked - Given User is on "clusters" page - And User opens the clusters page + Given User is on "clusters" page + And User has at least one "managed" cluster When User clicks cluster dropdown Then The cluster names are listed Scenario: Sort the Clusters by Name Given User is on "clusters" page - When User should select "name" from the dropdownzz + When User should select "name" from the dropdown Then User should see the List view sorted on basis of "name" Scenario: Sort the Clusters by Status From 052409b6358c996509555525f44f06efa2776b9d Mon Sep 17 00:00:00 2001 From: jeverett Date: Thu, 23 Aug 2018 14:15:47 -0400 Subject: [PATCH 3/5] correcting typo --- test/behavior/tendrl/cluster.feature | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/behavior/tendrl/cluster.feature b/test/behavior/tendrl/cluster.feature index 4a0e2efc..a696a13f 100644 --- a/test/behavior/tendrl/cluster.feature +++ b/test/behavior/tendrl/cluster.feature @@ -19,7 +19,7 @@ Feature: CLUSTER And User sees "Unmanage Cluster" dialog box And User clicks on "unmanage" button Then User sees "Cluster Task" dialog box - And User closes "Cluster Tast" dialog box + And User closes "Cluster Task" dialog box And User sees that cluster is unmanaged Scenario: Filter by valid cluster name From 8eb8bfcbe9badc646e950250986de9568efe41c0 Mon Sep 17 00:00:00 2001 From: jeverett Date: Mon, 1 Oct 2018 14:46:58 -0400 Subject: [PATCH 4/5] reset head, added unmanaged.feature --- test/behavior/tendrl/cluster.feature | 80 ----------- .../behavior/tendrl/cluster_unmanaged.feature | 129 ++++++++++++++++++ 2 files changed, 129 insertions(+), 80 deletions(-) delete mode 100644 test/behavior/tendrl/cluster.feature create mode 100644 test/behavior/tendrl/cluster_unmanaged.feature diff --git a/test/behavior/tendrl/cluster.feature b/test/behavior/tendrl/cluster.feature deleted file mode 100644 index a696a13f..00000000 --- a/test/behavior/tendrl/cluster.feature +++ /dev/null @@ -1,80 +0,0 @@ -Feature: CLUSTER - - Scenario: User views available cluster - Given User is on "cluster list" page - Then User sees one or more clusters available - - Scenario: Import Cluster page should be available - Given User is on "cluster list" page - And User has at least one "unmanaged" cluster - When User should see the "import" button - And User clicks on "import" button - Then User sees the "import-clusters" page - - Scenario: Unmanage a cluster - Given User is on "cluster list" page - And User has at least one "managed" cluster - When User clicks on kebab menu - And User clicks on "unmanage" button - And User sees "Unmanage Cluster" dialog box - And User clicks on "unmanage" button - Then User sees "Cluster Task" dialog box - And User closes "Cluster Task" dialog box - And User sees that cluster is unmanaged - - Scenario: Filter by valid cluster name - Given User is on "cluster list" page - And User has at least one "managed" cluster - When User filters by a "valid" cluster name - Then User should see the cluster name - - Scenario: Filter by invalid cluster name - Given User is on "cluster list" page - And User has at least one "managed" cluster - When User filters by an "invalid" cluster name - Then User should see no clusters - - Scenario: Cluster status Icon in list view - Given User is on "cluster list" page - And User has at least one "managed" cluster - Then User should see the Cluster Status Icon - - Scenario: Cluster name in list view - Given User is on "clusters" page - And User has at least one "managed" cluster - And User sees the hyperlink on "Cluster Name" - When User clicks on "Cluster Name" - Then User should see the "cluster hosts" page - - Scenario: Hosts in list view - Given User is on "clusters" page - And User has at least one "managed" cluster - And User sees the hyperlink on "Host Number" - When User clicks on "Host Number" - Then User should see the "hosts" dialog box - - Scenario: Cluster options dropdown is clicked - Given User is on "clusters" page - And User has at least one "managed" cluster - When User clicks cluster dropdown - Then The cluster names are listed - - Scenario: Sort the Clusters by Name - Given User is on "clusters" page - When User should select "name" from the dropdown - Then User should see the List view sorted on basis of "name" - - Scenario: Sort the Clusters by Status - Given User is on "clusters" page - When User should select "status" from the dropdown - Then User should see the List view sorted on basis of "status" - - Scenario: Sort the Clusters by Cluster Version - Given User is on "clusters" page - When User should select "status" from the dropdown - Then User should see the List view sorted on basis of "cluster version" - - Scenario: Sort the Clusters by Managed - Given User is on "clusters" page - When User should select "utilization" from the dropdown - Then User should see the List view sorted on basis of "managed" diff --git a/test/behavior/tendrl/cluster_unmanaged.feature b/test/behavior/tendrl/cluster_unmanaged.feature new file mode 100644 index 00000000..9fbe8c8c --- /dev/null +++ b/test/behavior/tendrl/cluster_unmanaged.feature @@ -0,0 +1,129 @@ +Feature: CLUSTER_UNMANAGED + + Scenario: User sees cluster lists page after logging in + Given User opens the Tendrl link + When User passes correct login information + Then User should see "cluster list" page + + Scenario: User sees cluster is unmanaged + Given User is on the "cluster list" page + And has at least one cluster available + Then User should see "No" under Managed + + Scenario: User sees cluster status icon + Given User is on the "cluster list" page + And has at least one cluster available + When User hovers over cluster status icon + And User should see status is unknown + + Scenario: User sees the cluster name/uuid + Given User is on the "cluster list" page + And has at least one cluster available + Then User should see UUID of unimported cluster + + Scenario: User sees Cluster Version info + Given User is on the "cluster list" page + And has at least one cluster available + Then User should see Cluster Version info + + Scenario: User sees hosts information + Given User is on the "cluster list" page + And has at least one cluster available + When User clicks on hosts link + Then User should be brought to hosts page + + Scenario: Cluster is unavailable for import + Given User is on the "cluster list" page + And has at least one cluster available + When the cluster is unavailable for import + Then the import button should be unusable + + Scenario: Cluster is available to import + Given User is on the "cluster list" page + And has at least one cluster available + When the cluster is available for import + Then the import button should be usable + + Scenario: Filter by valid cluster name + Given User is on "cluster list" page + And has at least one cluster available + When User filters by a "valid" cluster name + Then User should see the cluster name + + Scenario: Filter by invalid cluster name + Given User is on "cluster list" page + And User has at least one cluster available + When User filters by an "invalid" cluster name + Then User should see no clusters + + Scenario: User logs out + Given User is on the "cluster list" page + When User clicks on "usermenu dropdown" + And User clicks logout + Then User should see "login" page + + Scenario: Sort by ascending cluster name + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "Name" + And User selects ascending sort direction + Then User sees first cluster as first entry + + Scenario: Sort by descending cluster name + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "Name" + And User selects descending sort direction + Then User sees last cluster as first entry + + Scenario: Sort by ascending cluster status + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "status" + And User selects ascending sort direction + Then User sees first cluster as first entry + + Scenario: Sort by descending cluster status + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "status" + And User selects descending sort direction + Then User sees last cluster as first entry + + Scenario: Sort by ascending cluster version + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "version" + And User selects ascending sort direction + Then User sees first cluster as first entry + + Scenario: Sort by descending cluster version + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "version" + And User selects descending sort direction + Then User sees last cluster as first entry + + Scenario: Sort by ascending cluster managed + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "managed" + And User selects ascending sort direction + Then User sees first cluster as first entry + + Scenario: Sort by descending cluster managed + Given User is on the "cluster list" page + And User has at least two clusters available + When User clicks sorting dropdown + And User selects "managed" + And User selects descending sort direction + Then User sees last cluster as first entry + + From c0f5e189632b1614b4e1b9c72273542444b3ca5b Mon Sep 17 00:00:00 2001 From: jeverett Date: Fri, 5 Oct 2018 14:14:53 -0400 Subject: [PATCH 5/5] adjusting gherkin --- .../behavior/tendrl/cluster_unmanaged.feature | 38 ++++++++----------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/test/behavior/tendrl/cluster_unmanaged.feature b/test/behavior/tendrl/cluster_unmanaged.feature index 9fbe8c8c..8636d09d 100644 --- a/test/behavior/tendrl/cluster_unmanaged.feature +++ b/test/behavior/tendrl/cluster_unmanaged.feature @@ -1,36 +1,36 @@ Feature: CLUSTER_UNMANAGED - Scenario: User sees cluster lists page after logging in - Given User opens the Tendrl link - When User passes correct login information - Then User should see "cluster list" page - - Scenario: User sees cluster is unmanaged + Scenario: Cluster reported as unmanaged Given User is on the "cluster list" page And has at least one cluster available - Then User should see "No" under Managed + Then User should see "No" under Managed property of cluster - Scenario: User sees cluster status icon + Scenario: Cluster status icon reports unavailable Given User is on the "cluster list" page And has at least one cluster available When User hovers over cluster status icon - And User should see status is unknown + And User should see status is "unknown" - Scenario: User sees the cluster name/uuid + Scenario: Cluster name/uuid is reported Given User is on the "cluster list" page And has at least one cluster available Then User should see UUID of unimported cluster - Scenario: User sees Cluster Version info + Scenario: Cluster Version info is reported Given User is on the "cluster list" page And has at least one cluster available Then User should see Cluster Version info - Scenario: User sees hosts information + Scenario: Hosts information is accurate + Given User is on the "cluster list" page + And has at least one cluster available + Then hosts count should report actual number of hosts + + Scenario: Hosts information is clickable Given User is on the "cluster list" page And has at least one cluster available - When User clicks on hosts link - Then User should be brought to hosts page + When User clicks on hosts count link + Then User should be brought to host list modal Scenario: Cluster is unavailable for import Given User is on the "cluster list" page @@ -41,10 +41,10 @@ Feature: CLUSTER_UNMANAGED Scenario: Cluster is available to import Given User is on the "cluster list" page And has at least one cluster available - When the cluster is available for import + When the cluster is "Ready to import" Then the import button should be usable - Scenario: Filter by valid cluster name + Scenario: Filter by valid cluster namee Given User is on "cluster list" page And has at least one cluster available When User filters by a "valid" cluster name @@ -55,12 +55,6 @@ Feature: CLUSTER_UNMANAGED And User has at least one cluster available When User filters by an "invalid" cluster name Then User should see no clusters - - Scenario: User logs out - Given User is on the "cluster list" page - When User clicks on "usermenu dropdown" - And User clicks logout - Then User should see "login" page Scenario: Sort by ascending cluster name Given User is on the "cluster list" page