debian-mirror-gitlab/spec/services/ci/web_hook_service_spec.rb
2015-10-24 18:46:33 +05:30

37 lines
1 KiB
Ruby

require 'spec_helper'
describe Ci::WebHookService do
let(:project) { FactoryGirl.create :ci_project }
let(:gl_project) { FactoryGirl.create :empty_project, gitlab_ci_project: project }
let(:commit) { FactoryGirl.create :ci_commit, gl_project: gl_project }
let(:build) { FactoryGirl.create :ci_build, commit: commit }
let(:hook) { FactoryGirl.create :ci_web_hook, project: project }
describe :execute do
it "should execute successfully" do
stub_request(:post, hook.url).to_return(status: 200)
expect(Ci::WebHookService.new.build_end(build)).to be_truthy
end
end
context 'build_data' do
it "contains all needed fields" do
expect(build_data(build)).to include(
:build_id,
:project_id,
:ref,
:build_status,
:build_started_at,
:build_finished_at,
:before_sha,
:project_name,
:gitlab_url,
:build_name
)
end
end
def build_data(build)
Ci::WebHookService.new.send :build_data, build
end
end