Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
3940fa0d
Commit
3940fa0d
authored
Nov 07, 2017
by
Eric Eastwood
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add feature spec for Ingress
parent
e957ea4a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
60 additions
and
16 deletions
+60
-16
spec/features/projects/clusters_spec.rb
spec/features/projects/clusters_spec.rb
+60
-16
No files found.
spec/features/projects/clusters_spec.rb
View file @
3940fa0d
...
...
@@ -51,8 +51,10 @@ feature 'Clusters', :js do
expect
(
page
).
to
have_content
(
'Cluster is being created on Google Container Engine...'
)
# Application Installation buttons
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
).
text
).
to
eq
(
'Install'
)
page
.
within
(
'.js-cluster-application-row-helm'
)
do
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
).
text
).
to
eq
(
'Install'
)
end
Clusters
::
Cluster
.
last
.
provider
.
make_created!
...
...
@@ -92,36 +94,78 @@ feature 'Clusters', :js do
expect
(
page
.
find
(
:css
,
'.cluster-name'
).
value
).
to
eq
(
cluster
.
name
)
# Application Installation buttons
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
be_nil
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Install'
)
page
.
within
(
'.js-cluster-application-row-helm'
)
do
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
be_nil
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Install'
)
end
end
context
'when user installs application:
t
iller'
do
context
'when user installs application:
Helm T
iller'
do
before
do
allow
(
ClusterInstallAppWorker
).
to
receive
(
:perform_async
).
and_return
(
nil
)
page
.
find
(
:css
,
'.js-cluster-application-install-button'
).
click
page
.
within
(
'.js-cluster-application-row-helm'
)
do
page
.
find
(
:css
,
'.js-cluster-application-install-button'
).
click
end
end
it
'user sees status transition'
do
# FE sends request and gets the responce, then the buttons is "Install"
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Install'
)
page
.
within
(
'.js-cluster-application-row-helm'
)
do
# FE sends request and gets the response, then the buttons is "Install"
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Install'
)
Clusters
::
Cluster
.
last
.
application_helm
.
make_installing!
Clusters
::
Cluster
.
last
.
application_helm
.
make_installing!
# FE starts polling and update the buttons to "Installing"
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Installing'
)
# FE starts pooling and update the buttons to "Installing"
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Installing'
)
Clusters
::
Cluster
.
last
.
application_helm
.
make_installed!
Clusters
::
Cluster
.
last
.
application_helm
.
make_installed!
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Installed'
)
end
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Installed'
)
expect
(
page
).
to
have_content
(
'Helm Tiller was successfully installed on your cluster'
)
end
end
context
'when user installs application: Ingress'
do
before
do
allow
(
ClusterInstallAppWorker
).
to
receive
(
:perform_async
).
and_return
(
nil
)
# Helm Tiller needs to be installed before you can install Ingress
create
(
:cluster_applications_helm
,
:installed
,
cluster:
cluster
)
visit
project_clusters_path
(
project
)
page
.
within
(
'.js-cluster-application-row-ingress'
)
do
page
.
find
(
:css
,
'.js-cluster-application-install-button'
).
click
end
end
it
'user sees status transition'
do
page
.
within
(
'.js-cluster-application-row-ingress'
)
do
# FE sends request and gets the response, then the buttons is "Install"
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Install'
)
Clusters
::
Cluster
.
last
.
application_ingress
.
make_installing!
# FE starts polling and update the buttons to "Installing"
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Installing'
)
Clusters
::
Cluster
.
last
.
application_ingress
.
make_installed!
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)[
'disabled'
]).
to
eq
(
'true'
)
expect
(
page
.
find
(
:css
,
'.js-cluster-application-install-button'
)).
to
have_content
(
'Installed'
)
end
expect
(
page
).
to
have_content
(
'Ingress was successfully installed on your cluster'
)
end
end
context
'when user disables the cluster'
do
before
do
page
.
find
(
:css
,
'.js-toggle-cluster'
).
click
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment