services_spec.rb 1.7 KB
Newer Older
1 2
require "spec_helper"

J
Jeroen van Baarsen 已提交
3
describe API::API, api: true  do
4 5
  include ApiHelpers
  let(:user) { create(:user) }
D
Dmitriy Zaporozhets 已提交
6
  let(:project) {create(:project, creator_id: user.id, namespace: user.namespace) }
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

  describe "POST /projects/:id/services/gitlab-ci" do
    it "should update gitlab-ci settings" do
      put api("/projects/#{project.id}/services/gitlab-ci", user), token: 'secret-token', project_url: "http://ci.example.com/projects/1"

      response.status.should == 200
    end

    it "should return if required fields missing" do
      put api("/projects/#{project.id}/services/gitlab-ci", user), project_url: "http://ci.example.com/projects/1", active: true

      response.status.should == 400
    end
  end

  describe "DELETE /projects/:id/services/gitlab-ci" do
    it "should update gitlab-ci settings" do
      delete api("/projects/#{project.id}/services/gitlab-ci", user)

      response.status.should == 200
      project.gitlab_ci_service.should be_nil
    end
  end
K
Kevin Houdebert 已提交
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55

  describe 'PUT /projects/:id/services/hipchat' do
    it 'should update hipchat settings' do
      put api("/projects/#{project.id}/services/hipchat", user),
          token: 'secret-token', room: 'test'

      response.status.should == 200
      project.hipchat_service.should_not be_nil
    end

    it 'should return if required fields missing' do
      put api("/projects/#{project.id}/services/gitlab-ci", user),
          token: 'secret-token', active: true

      response.status.should == 400
    end
  end

  describe 'DELETE /projects/:id/services/hipchat' do
    it 'should delete hipchat settings' do
      delete api("/projects/#{project.id}/services/hipchat", user)

      response.status.should == 200
      project.hipchat_service.should be_nil
    end
  end
56
end