diff --git a/app/views/projects/builds/show.html.haml b/app/views/projects/builds/show.html.haml
index 43c6437f9b1..488688a7d59 100644
--- a/app/views/projects/builds/show.html.haml
+++ b/app/views/projects/builds/show.html.haml
@@ -38,19 +38,14 @@
- if @build.complete?
- if @build.success?
- if last_deployment.try(:last?)
- This build is the most recent deployment to
- = environment_link_for_build(@build.project, @build)
+ This build is the most recent deployment to #{environment_link_for_build(@build.project, @build)}.
- else
This build is an out-of-date deployment to #{environment_link_for_build(@build.project, @build)}. View the most recent deployment #{deployment_link(@project, last_deployment)}.
- else
- The deployment of this build to
- = environment_link_for_build(@build.project, @build)
- did not complete.
+ The deployment of this build to #{environment_link_for_build(@build.project, @build)} did not complete.
- else
- This build is creating a deployment to
- = environment_link_for_build(@build.project, @build)
- and will overwrite the
- = link_to "latest deployment.", deployment_link(@project, last_deployment)
+ This build is creating a deployment to #{environment_link_for_build(@build.project, @build)} and will overwrite the |
+ = link_to "latest deployment.", deployment_link(@project, last_deployment) |
.prepend-top-default
- if @build.erased?
diff --git a/spec/views/projects/builds/show.html.haml_spec.rb b/spec/views/projects/builds/show.html.haml_spec.rb
index 98b68e730e6..fa4d66bb6cb 100644
--- a/spec/views/projects/builds/show.html.haml_spec.rb
+++ b/spec/views/projects/builds/show.html.haml_spec.rb
@@ -28,7 +28,6 @@ describe 'projects/builds/show', :view do
it 'shows deployment message' do
expected_text = 'This build is the most recent deployment'
-
render
expect(rendered).to have_css(
@@ -63,22 +62,75 @@ describe 'projects/builds/show', :view do
end
context 'build failed to deploy' do
- let(:build) { create(:ci_build, :failed, environment: 'staging') }
- let!(:environment) { create(:environment, name: 'staging') }
+ let(:build) do
+ create(:ci_build, :failed, environment: 'staging', pipeline: pipeline)
+ end
+
+ let!(:environment) do
+ create(:environment, name: 'staging', project: project)
+ end
+
+ it 'shows deployment message' do
+ expected_text = 'The deployment of this build to staging did not complete.'
+ render
+
+ expect(rendered).to have_css(
+ '.environment-information', text: expected_text)
+ end
end
context 'build will deploy' do
- let(:build) { create(:ci_build, :running, environment: 'staging') }
- let!(:environment) { create(:environment, name: 'staging') }
+ let(:build) do
+ create(:ci_build, :running, environment: 'staging', pipeline: pipeline)
+ end
+
+ let!(:environment) do
+ create(:environment, name: 'staging', project: project)
+ end
+
+ it 'shows deployment message' do
+ expected_text = 'This build is creating a deployment to staging'
+ render
+
+ expect(rendered).to have_css(
+ '.environment-information', text: expected_text)
+ end
end
context 'build that failed to deploy and environment has not been created' do
- let(:build) { create(:ci_build, :failed, environment: 'staging') }
+ let(:build) do
+ create(:ci_build, :failed, environment: 'staging', pipeline: pipeline)
+ end
+
+ let!(:environment) do
+ create(:environment, name: 'staging', project: project)
+ end
+
+ it 'shows deployment message' do
+ expected_text = 'The deployment of this build to staging did not complete'
+ render
+
+ expect(rendered).to have_css(
+ '.environment-information', text: expected_text)
+ end
end
context 'build that will deploy and environment has not been created' do
- let(:build) { create(:ci_build, :running, environment: 'staging') }
- let!(:environment) { create(:environment, name: 'staging') }
+ let(:build) do
+ create(:ci_build, :running, environment: 'staging', pipeline: pipeline)
+ end
+
+ let!(:environment) do
+ create(:environment, name: 'staging', project: project)
+ end
+
+ it 'shows deployment message' do
+ expected_text = 'This build is creating a deployment to staging'
+ render
+
+ expect(rendered).to have_css(
+ '.environment-information', text: expected_text)
+ end
end
end