Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzciński <ayufan@ayufan.eu>2018-07-30 18:05:50 +0300
committerKamil Trzciński <ayufan@ayufan.eu>2018-08-01 13:25:19 +0300
commit8ce4bf20e737482db33f9ad1d37ad8212c6330a0 (patch)
tree4d04ade2163f56baf4fccfe985692806828e317f /spec/presenters/commit_status_presenter_spec.rb
parent8ce03988b9a29d34016052be2dd8641fa7b9efbe (diff)
Improve CommitStatusPresenter
Diffstat (limited to 'spec/presenters/commit_status_presenter_spec.rb')
-rw-r--r--spec/presenters/commit_status_presenter_spec.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/spec/presenters/commit_status_presenter_spec.rb b/spec/presenters/commit_status_presenter_spec.rb
index f81ee44e371..2b7742ddbb8 100644
--- a/spec/presenters/commit_status_presenter_spec.rb
+++ b/spec/presenters/commit_status_presenter_spec.rb
@@ -12,4 +12,30 @@ describe CommitStatusPresenter do
it 'inherits from Gitlab::View::Presenter::Delegated' do
expect(described_class.superclass).to eq(Gitlab::View::Presenter::Delegated)
end
+
+ describe 'covers all failure reasons' do
+ let(:message) { presenter.callout_failure_message }
+
+ CommitStatus.failure_reasons.keys.each do |failure_reason|
+ context failure_reason do
+ before do
+ build.failure_reason = failure_reason
+ end
+
+ it "is a valid status" do
+ expect { message }.not_to raise_error
+ end
+ end
+ end
+
+ context 'invalid failure message' do
+ before do
+ expect(build).to receive(:failure_reason) { 'invalid failure message' }
+ end
+
+ it "is an invalid status" do
+ expect { message }.to raise_error(/key not found:/)
+ end
+ end
+ end
end