diff options
author | Scott Hampton <shampton@gitlab.com> | 2019-02-25 11:03:28 +0000 |
---|---|---|
committer | Kamil TrzciĆski <ayufan@ayufan.eu> | 2019-02-25 11:03:28 +0000 |
commit | 8c60c671b0402fd725425efe6a8d9a05f0491308 (patch) | |
tree | c676e9457fc8fa564f11bea0daff898bc93778e8 /spec/views | |
parent | a91bacf51c1be050530e3392fe309d3323190010 (diff) | |
download | gitlab-ce-8c60c671b0402fd725425efe6a8d9a05f0491308.tar.gz |
Hide CI status when pipelines disabled
Pipeline status was showing failed on projects when CI was disabled.
This checks to see if the feature is enabled before showing the status.
Diffstat (limited to 'spec/views')
-rw-r--r-- | spec/views/projects/commits/_commit.html.haml_spec.rb | 59 |
1 files changed, 55 insertions, 4 deletions
diff --git a/spec/views/projects/commits/_commit.html.haml_spec.rb b/spec/views/projects/commits/_commit.html.haml_spec.rb index 00547e433c4..6bf1b5fd2d0 100644 --- a/spec/views/projects/commits/_commit.html.haml_spec.rb +++ b/spec/views/projects/commits/_commit.html.haml_spec.rb @@ -1,15 +1,15 @@ require 'spec_helper' describe 'projects/commits/_commit.html.haml' do + let(:project) { create(:project, :repository) } + let(:commit) { project.repository.commit(ref) } + before do allow(view).to receive(:current_application_settings).and_return(Gitlab::CurrentSettings.current_application_settings) end - context 'with a singed commit' do - let(:project) { create(:project, :repository) } - let(:repository) { project.repository } + context 'with a signed commit' do let(:ref) { GpgHelpers::SIGNED_COMMIT_SHA } - let(:commit) { repository.commit(ref) } it 'does not display a loading spinner for GPG status' do render partial: 'projects/commits/commit', locals: { @@ -23,4 +23,55 @@ describe 'projects/commits/_commit.html.haml' do end end end + + context 'with ci status' do + let(:ref) { 'master' } + let(:user) { create(:user) } + + before do + allow(view).to receive(:current_user).and_return(user) + + project.add_developer(user) + + create( + :ci_empty_pipeline, + ref: 'master', + sha: commit.id, + status: 'success', + project: project + ) + end + + context 'when pipelines are disabled' do + before do + allow(project).to receive(:builds_enabled?).and_return(false) + end + + it 'does not display a ci status icon' do + render partial: 'projects/commits/commit', locals: { + project: project, + ref: ref, + commit: commit + } + + expect(rendered).not_to have_css('.ci-status-link') + end + end + + context 'when pipelines are enabled' do + before do + allow(project).to receive(:builds_enabled?).and_return(true) + end + + it 'does display a ci status icon when pipelines are enabled' do + render partial: 'projects/commits/commit', locals: { + project: project, + ref: ref, + commit: commit + } + + expect(rendered).to have_css('.ci-status-link') + end + end + end end |