summaryrefslogtreecommitdiff
path: root/spec/models/deployment_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/deployment_spec.rb')
-rw-r--r--spec/models/deployment_spec.rb136
1 files changed, 68 insertions, 68 deletions
diff --git a/spec/models/deployment_spec.rb b/spec/models/deployment_spec.rb
index a8d53cfcd7d..c2a590f9083 100644
--- a/spec/models/deployment_spec.rb
+++ b/spec/models/deployment_spec.rb
@@ -1,4 +1,4 @@
-require 'spec_helper'
+require "spec_helper"
describe Deployment do
subject { build(:deployment) }
@@ -16,9 +16,9 @@ describe Deployment do
it { is_expected.to validate_presence_of(:ref) }
it { is_expected.to validate_presence_of(:sha) }
- it_behaves_like 'having unique enum values'
+ it_behaves_like "having unique enum values"
- describe '#scheduled_actions' do
+ describe "#scheduled_actions" do
subject { deployment.scheduled_actions }
let(:project) { create(:project, :repository) }
@@ -26,7 +26,7 @@ describe Deployment do
let(:build) { create(:ci_build, :success, pipeline: pipeline) }
let(:deployment) { create(:deployment, deployable: build) }
- it 'delegates to other_scheduled_actions' do
+ it "delegates to other_scheduled_actions" do
expect_any_instance_of(Ci::Build)
.to receive(:other_scheduled_actions)
@@ -34,47 +34,47 @@ describe Deployment do
end
end
- describe 'modules' do
- it_behaves_like 'AtomicInternalId' do
+ describe "modules" do
+ it_behaves_like "AtomicInternalId" do
let(:internal_id_attribute) { :iid }
let(:instance) { build(:deployment) }
let(:scope) { :project }
- let(:scope_attrs) { { project: instance.project } }
+ let(:scope_attrs) { {project: instance.project} }
let(:usage) { :deployments }
end
end
- describe '.success' do
+ describe ".success" do
subject { described_class.success }
- context 'when deployment status is success' do
+ context "when deployment status is success" do
let(:deployment) { create(:deployment, :success) }
it { is_expected.to eq([deployment]) }
end
- context 'when deployment status is created' do
+ context "when deployment status is created" do
let(:deployment) { create(:deployment, :created) }
it { is_expected.to be_empty }
end
- context 'when deployment status is running' do
+ context "when deployment status is running" do
let(:deployment) { create(:deployment, :running) }
it { is_expected.to be_empty }
end
end
- describe 'state machine' do
- context 'when deployment runs' do
+ describe "state machine" do
+ context "when deployment runs" do
let(:deployment) { create(:deployment) }
before do
deployment.run!
end
- it 'starts running' do
+ it "starts running" do
Timecop.freeze do
expect(deployment).to be_running
expect(deployment.finished_at).to be_nil
@@ -82,10 +82,10 @@ describe Deployment do
end
end
- context 'when deployment succeeded' do
+ context "when deployment succeeded" do
let(:deployment) { create(:deployment, :running) }
- it 'has correct status' do
+ it "has correct status" do
Timecop.freeze do
deployment.succeed!
@@ -94,7 +94,7 @@ describe Deployment do
end
end
- it 'executes Deployments::SuccessWorker asynchronously' do
+ it "executes Deployments::SuccessWorker asynchronously" do
expect(Deployments::SuccessWorker)
.to receive(:perform_async).with(deployment.id)
@@ -102,10 +102,10 @@ describe Deployment do
end
end
- context 'when deployment failed' do
+ context "when deployment failed" do
let(:deployment) { create(:deployment, :running) }
- it 'has correct status' do
+ it "has correct status" do
Timecop.freeze do
deployment.drop!
@@ -115,10 +115,10 @@ describe Deployment do
end
end
- context 'when deployment was canceled' do
+ context "when deployment was canceled" do
let(:deployment) { create(:deployment, :running) }
- it 'has correct status' do
+ it "has correct status" do
Timecop.freeze do
deployment.cancel!
@@ -129,54 +129,54 @@ describe Deployment do
end
end
- describe '#success?' do
+ describe "#success?" do
subject { deployment.success? }
- context 'when deployment status is success' do
+ context "when deployment status is success" do
let(:deployment) { create(:deployment, :success) }
it { is_expected.to be_truthy }
end
- context 'when deployment status is failed' do
+ context "when deployment status is failed" do
let(:deployment) { create(:deployment, :failed) }
it { is_expected.to be_falsy }
end
end
- describe '#status_name' do
+ describe "#status_name" do
subject { deployment.status_name }
- context 'when deployment status is success' do
+ context "when deployment status is success" do
let(:deployment) { create(:deployment, :success) }
it { is_expected.to eq(:success) }
end
- context 'when deployment status is failed' do
+ context "when deployment status is failed" do
let(:deployment) { create(:deployment, :failed) }
it { is_expected.to eq(:failed) }
end
end
- describe '#finished_at' do
+ describe "#finished_at" do
subject { deployment.finished_at }
- context 'when deployment status is created' do
+ context "when deployment status is created" do
let(:deployment) { create(:deployment) }
it { is_expected.to be_nil }
end
- context 'when deployment status is success' do
+ context "when deployment status is success" do
let(:deployment) { create(:deployment, :success) }
it { is_expected.to eq(deployment.read_attribute(:finished_at)) }
end
- context 'when deployment status is success' do
+ context "when deployment status is success" do
let(:deployment) { create(:deployment, :success, finished_at: nil) }
before do
@@ -186,37 +186,37 @@ describe Deployment do
it { is_expected.to eq(deployment.read_attribute(:created_at)) }
end
- context 'when deployment status is running' do
+ context "when deployment status is running" do
let(:deployment) { create(:deployment, :running) }
it { is_expected.to be_nil }
end
end
- describe '#deployed_at' do
+ describe "#deployed_at" do
subject { deployment.deployed_at }
- context 'when deployment status is created' do
+ context "when deployment status is created" do
let(:deployment) { create(:deployment) }
it { is_expected.to be_nil }
end
- context 'when deployment status is success' do
+ context "when deployment status is success" do
let(:deployment) { create(:deployment, :success) }
it { is_expected.to eq(deployment.read_attribute(:finished_at)) }
end
- context 'when deployment status is running' do
+ context "when deployment status is running" do
let(:deployment) { create(:deployment, :running) }
it { is_expected.to be_nil }
end
end
- describe 'scopes' do
- describe 'last_for_environment' do
+ describe "scopes" do
+ describe "last_for_environment" do
let(:production) { create(:environment) }
let(:staging) { create(:environment) }
let(:testing) { create(:environment) }
@@ -225,11 +225,11 @@ describe Deployment do
[
create(:deployment, environment: production),
create(:deployment, environment: staging),
- create(:deployment, environment: production)
+ create(:deployment, environment: production),
]
end
- it 'retrieves last deployments for environments' do
+ it "retrieves last deployments for environments" do
last_deployments = described_class.last_for_environment([staging, production, testing])
expect(last_deployments.size).to eq(2)
@@ -238,31 +238,31 @@ describe Deployment do
end
end
- describe '#includes_commit?' do
+ describe "#includes_commit?" do
let(:project) { create(:project, :repository) }
let(:environment) { create(:environment, project: project) }
let(:deployment) do
create(:deployment, environment: environment, sha: project.commit.id)
end
- context 'when there is no project commit' do
- it 'returns false' do
- commit = project.commit('feature')
+ context "when there is no project commit" do
+ it "returns false" do
+ commit = project.commit("feature")
expect(deployment.includes_commit?(commit)).to be false
end
end
- context 'when they share the same tree branch' do
- it 'returns true' do
+ context "when they share the same tree branch" do
+ it "returns true" do
commit = project.commit
expect(deployment.includes_commit?(commit)).to be true
end
end
- context 'when the SHA for the deployment does not exist in the repo' do
- it 'returns false' do
+ context "when the SHA for the deployment does not exist in the repo" do
+ it "returns false" do
deployment.update(sha: Gitlab::Git::BLANK_SHA)
commit = project.commit
@@ -271,22 +271,22 @@ describe Deployment do
end
end
- describe '#metrics' do
+ describe "#metrics" do
let(:deployment) { create(:deployment, :success) }
- let(:prometheus_adapter) { double('prometheus_adapter', can_query?: true) }
+ let(:prometheus_adapter) { double("prometheus_adapter", can_query?: true) }
subject { deployment.metrics }
- context 'metrics are disabled' do
+ context "metrics are disabled" do
it { is_expected.to eq({}) }
end
- context 'metrics are enabled' do
+ context "metrics are enabled" do
let(:simple_metrics) do
{
success: true,
metrics: {},
- last_update: 42
+ last_update: 42,
}
end
@@ -295,62 +295,62 @@ describe Deployment do
allow(prometheus_adapter).to receive(:query).with(:deployment, deployment).and_return(simple_metrics)
end
- it { is_expected.to eq(simple_metrics.merge({ deployment_time: deployment.created_at.to_i })) }
+ it { is_expected.to eq(simple_metrics.merge({deployment_time: deployment.created_at.to_i})) }
end
end
- describe '#additional_metrics' do
+ describe "#additional_metrics" do
let(:project) { create(:project, :repository) }
let(:deployment) { create(:deployment, :succeed, project: project) }
subject { deployment.additional_metrics }
- context 'metrics are disabled' do
+ context "metrics are disabled" do
it { is_expected.to eq({}) }
end
- context 'metrics are enabled' do
+ context "metrics are enabled" do
let(:simple_metrics) do
{
success: true,
metrics: {},
- last_update: 42
+ last_update: 42,
}
end
- let(:prometheus_adapter) { double('prometheus_adapter', can_query?: true) }
+ let(:prometheus_adapter) { double("prometheus_adapter", can_query?: true) }
before do
allow(deployment).to receive(:prometheus_adapter).and_return(prometheus_adapter)
allow(prometheus_adapter).to receive(:query).with(:additional_metrics_deployment, deployment).and_return(simple_metrics)
end
- it { is_expected.to eq(simple_metrics.merge({ deployment_time: deployment.created_at.to_i })) }
+ it { is_expected.to eq(simple_metrics.merge({deployment_time: deployment.created_at.to_i})) }
end
end
- describe '#stop_action' do
+ describe "#stop_action" do
let(:build) { create(:ci_build) }
subject { deployment.stop_action }
- context 'when no other actions' do
+ context "when no other actions" do
let(:deployment) { FactoryBot.build(:deployment, deployable: build) }
it { is_expected.to be_nil }
end
- context 'with other actions' do
- let!(:close_action) { create(:ci_build, :manual, pipeline: build.pipeline, name: 'close_app') }
+ context "with other actions" do
+ let!(:close_action) { create(:ci_build, :manual, pipeline: build.pipeline, name: "close_app") }
- context 'when matching action is defined' do
- let(:deployment) { FactoryBot.build(:deployment, deployable: build, on_stop: 'close_other_app') }
+ context "when matching action is defined" do
+ let(:deployment) { FactoryBot.build(:deployment, deployable: build, on_stop: "close_other_app") }
it { is_expected.to be_nil }
end
- context 'when no matching action is defined' do
- let(:deployment) { FactoryBot.build(:deployment, deployable: build, on_stop: 'close_app') }
+ context "when no matching action is defined" do
+ let(:deployment) { FactoryBot.build(:deployment, deployable: build, on_stop: "close_app") }
it { is_expected.to eq(close_action) }
end