summaryrefslogtreecommitdiff
path: root/spec/models/release_spec.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-11-19 09:06:16 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-11-19 09:06:16 +0000
commit34b3567c97ecc0f317adae04e10e4d7d8c8830db (patch)
tree2612572041a8a6121ce9098cabf8724e67a96ea2 /spec/models/release_spec.rb
parent3209c1a49c14cab93eb347bfca59bace30879440 (diff)
downloadgitlab-ce-34b3567c97ecc0f317adae04e10e4d7d8c8830db.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/models/release_spec.rb')
-rw-r--r--spec/models/release_spec.rb48
1 files changed, 44 insertions, 4 deletions
diff --git a/spec/models/release_spec.rb b/spec/models/release_spec.rb
index f9c7a14f1f3..cadb8793e15 100644
--- a/spec/models/release_spec.rb
+++ b/spec/models/release_spec.rb
@@ -53,6 +53,12 @@ RSpec.describe Release do
end
end
+ describe 'callbacks' do
+ it 'creates a new Evidence object on after_commit', :sidekiq_inline do
+ expect { release }.to change(Evidence, :count).by(1)
+ end
+ end
+
describe '#assets_count' do
subject { release.assets_count }
@@ -92,20 +98,22 @@ RSpec.describe Release do
end
end
- describe 'evidence', :sidekiq_might_not_need_inline do
+ describe 'evidence' do
+ let(:release_with_evidence) { create(:release, :with_evidence, project: project) }
+
describe '#create_evidence!' do
context 'when a release is created' do
it 'creates one Evidence object too' do
- expect { release }.to change(Evidence, :count).by(1)
+ expect { release_with_evidence }.to change(Evidence, :count).by(1)
end
end
end
context 'when a release is deleted' do
it 'also deletes the associated evidence' do
- release = create(:release)
+ release_with_evidence
- expect { release.destroy }.to change(Evidence, :count).by(-1)
+ expect { release_with_evidence.destroy }.to change(Evidence, :count).by(-1)
end
end
end
@@ -141,4 +149,36 @@ RSpec.describe Release do
end
end
end
+
+ describe '#evidence_sha' do
+ subject { release.evidence_sha }
+
+ context 'when a release was created before evidence collection existed' do
+ let!(:release) { create(:release) }
+
+ it { is_expected.to be_nil }
+ end
+
+ context 'when a release was created with evidence collection' do
+ let!(:release) { create(:release, :with_evidence) }
+
+ it { is_expected.to eq(release.evidence.summary_sha) }
+ end
+ end
+
+ describe '#evidence_summary' do
+ subject { release.evidence_summary }
+
+ context 'when a release was created before evidence collection existed' do
+ let!(:release) { create(:release) }
+
+ it { is_expected.to eq({}) }
+ end
+
+ context 'when a release was created with evidence collection' do
+ let!(:release) { create(:release, :with_evidence) }
+
+ it { is_expected.to eq(release.evidence.summary) }
+ end
+ end
end