Commit 32ab86d4 authored by Grzegorz Bizon's avatar Grzegorz Bizon

Add specs for a new external build detailed status

parent b222f6d5
require 'spec_helper' require 'spec_helper'
describe GenericCommitStatus, models: true do describe GenericCommitStatus, models: true do
let(:pipeline) { create(:ci_pipeline) } let(:project) { create(:empty_project) }
let(:pipeline) { create(:ci_pipeline, project: project) }
let(:external_url) { 'http://example.gitlab.com/status' }
let(:generic_commit_status) do let(:generic_commit_status) do
create(:generic_commit_status, pipeline: pipeline) create(:generic_commit_status, pipeline: pipeline,
target_url: external_url)
end end
describe '#context' do describe '#context' do
...@@ -22,10 +25,25 @@ describe GenericCommitStatus, models: true do ...@@ -22,10 +25,25 @@ describe GenericCommitStatus, models: true do
describe '#detailed_status' do describe '#detailed_status' do
let(:user) { create(:user) } let(:user) { create(:user) }
let(:status) { generic_commit_status.detailed_status(user) }
it 'returns detailed status object' do it 'returns detailed status object' do
expect(generic_commit_status.detailed_status(user)) expect(status).to be_a Gitlab::Ci::Status::Success
.to be_a Gitlab::Ci::Status::Success end
context 'when user has ability to see datails' do
before { project.team << [user, :developer] }
it 'details path points to an external URL' do
expect(status).to have_details
expect(status.details_path).to eq external_url
end
end
context 'when user should not see details' do
it 'does not have details' do
expect(status).not_to have_details
end
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment