summaryrefslogtreecommitdiff
path: root/spec/models
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-10-15 12:06:06 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-10-15 12:06:06 +0000
commitfc96671f817239041ba2747af835a8d5d9aa3739 (patch)
tree19c7f650c869033760850b0d0edd4fb0a10968c4 /spec/models
parent3d13802bc2c9400ea33defdd43bff6d904ee9c4d (diff)
downloadgitlab-ce-fc96671f817239041ba2747af835a8d5d9aa3739.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/models')
-rw-r--r--spec/models/ci/build_spec.rb18
-rw-r--r--spec/models/concerns/deployable_spec.rb82
-rw-r--r--spec/models/environment_status_spec.rb2
-rw-r--r--spec/models/merge_request_spec.rb2
4 files changed, 4 insertions, 100 deletions
diff --git a/spec/models/ci/build_spec.rb b/spec/models/ci/build_spec.rb
index bf09bf7f4b5..de90e4c2fba 100644
--- a/spec/models/ci/build_spec.rb
+++ b/spec/models/ci/build_spec.rb
@@ -957,7 +957,7 @@ describe Ci::Build do
end
describe 'state transition as a deployable' do
- let!(:build) { create(:ci_build, :start_review_app) }
+ let!(:build) { create(:ci_build, :with_deployment, :start_review_app) }
let(:deployment) { build.deployment }
let(:environment) { deployment.environment }
@@ -1043,20 +1043,6 @@ describe Ci::Build do
end
describe 'deployment' do
- describe '#has_deployment?' do
- subject { build.has_deployment? }
-
- context 'when build has a deployment' do
- let!(:deployment) { create(:deployment, deployable: build) }
-
- it { is_expected.to be_truthy }
- end
-
- context 'when build does not have a deployment' do
- it { is_expected.to be_falsy }
- end
- end
-
describe '#outdated_deployment?' do
subject { build.outdated_deployment? }
@@ -1955,7 +1941,7 @@ describe Ci::Build do
end
context 'when build has a start environment' do
- let(:build) { create(:ci_build, :deploy_to_production, pipeline: pipeline) }
+ let(:build) { create(:ci_build, :with_deployment, :deploy_to_production, pipeline: pipeline) }
it 'does not expand environment name' do
expect(build).not_to receive(:expanded_environment_name)
diff --git a/spec/models/concerns/deployable_spec.rb b/spec/models/concerns/deployable_spec.rb
deleted file mode 100644
index ad2c0770a2c..00000000000
--- a/spec/models/concerns/deployable_spec.rb
+++ /dev/null
@@ -1,82 +0,0 @@
-# frozen_string_literal: true
-
-require 'spec_helper'
-
-describe Deployable do
- describe '#create_deployment' do
- let(:deployment) { job.deployment }
- let(:environment) { deployment&.environment }
-
- context 'when the deployable object will deploy to production' do
- let!(:job) { create(:ci_build, :start_review_app) }
-
- it 'creates a deployment and environment record' do
- expect(deployment.project).to eq(job.project)
- expect(deployment.ref).to eq(job.ref)
- expect(deployment.tag).to eq(job.tag)
- expect(deployment.sha).to eq(job.sha)
- expect(deployment.user).to eq(job.user)
- expect(deployment.deployable).to eq(job)
- expect(deployment.on_stop).to eq('stop_review_app')
- expect(environment.name).to eq('review/master')
- end
- end
-
- context 'when the deployable object will deploy to a cluster' do
- let(:project) { create(:project) }
- let!(:cluster) { create(:cluster, :provided_by_user, projects: [project]) }
- let!(:job) { create(:ci_build, :start_review_app, project: project) }
-
- it 'creates a deployment with cluster association' do
- expect(deployment.cluster).to eq(cluster)
- end
- end
-
- context 'when the deployable object will stop an environment' do
- let!(:job) { create(:ci_build, :stop_review_app) }
-
- it 'does not create a deployment record' do
- expect(deployment).to be_nil
- end
- end
-
- context 'when the deployable object has already had a deployment' do
- let!(:job) { create(:ci_build, :start_review_app, deployment: race_deployment) }
- let!(:race_deployment) { create(:deployment, :success) }
-
- it 'does not create a new deployment' do
- expect(deployment).to eq(race_deployment)
- end
- end
-
- context 'when the deployable object will not deploy' do
- let!(:job) { create(:ci_build) }
-
- it 'does not create a deployment and environment record' do
- expect(deployment).to be_nil
- expect(environment).to be_nil
- end
- end
-
- context 'when environment scope contains invalid character' do
- let(:job) do
- create(
- :ci_build,
- name: 'job:deploy-to-test-site',
- environment: '$CI_JOB_NAME',
- options: {
- environment: {
- name: '$CI_JOB_NAME',
- url: 'http://staging.example.com/$CI_JOB_NAME',
- on_stop: 'stop_review_app'
- }
- })
- end
-
- it 'does not create a deployment and environment record' do
- expect(deployment).to be_nil
- expect(environment).to be_nil
- end
- end
- end
-end
diff --git a/spec/models/environment_status_spec.rb b/spec/models/environment_status_spec.rb
index e2836420df9..01d331f518b 100644
--- a/spec/models/environment_status_spec.rb
+++ b/spec/models/environment_status_spec.rb
@@ -95,7 +95,7 @@ describe EnvironmentStatus do
describe '.build_environments_status' do
subject { described_class.send(:build_environments_status, merge_request, user, pipeline) }
- let!(:build) { create(:ci_build, :deploy_to_production, pipeline: pipeline) }
+ let!(:build) { create(:ci_build, :with_deployment, :deploy_to_production, pipeline: pipeline) }
let(:environment) { build.deployment.environment }
let(:user) { project.owner }
diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb
index b142942a0a7..b146c767f82 100644
--- a/spec/models/merge_request_spec.rb
+++ b/spec/models/merge_request_spec.rb
@@ -2366,7 +2366,7 @@ describe MergeRequest do
merge_requests_as_head_pipeline: [merge_request])
end
- let!(:job) { create(:ci_build, :start_review_app, pipeline: pipeline, project: project) }
+ let!(:job) { create(:ci_build, :with_deployment, :start_review_app, pipeline: pipeline, project: project) }
it 'returns environments' do
is_expected.to eq(pipeline.environments)