gitlab-org--gitlab-foss/spec/features/admin/admin_hooks_spec.rb
Rémy Coutable 4e3516788f Don't use FFaker in factories, use sequences instead
FFaker can generate data that randomly break our test suite. This
simplifies our factories and use sequences which are more predictive.

Signed-off-by: Rémy Coutable <remy@rymai.me>
2017-04-03 18:54:48 +02:00

52 lines
1.1 KiB
Ruby

require 'spec_helper'
describe "Admin::Hooks", feature: true do
before do
@project = create(:project)
login_as :admin
@system_hook = create(:system_hook)
end
describe "GET /admin/hooks" do
it "is ok" do
visit admin_root_path
page.within ".layout-nav" do
click_on "Hooks"
end
expect(current_path).to eq(admin_hooks_path)
end
it "has hooks list" do
visit admin_hooks_path
expect(page).to have_content(@system_hook.url)
end
end
describe "New Hook" do
let(:url) { generate(:url) }
it 'adds new hook' do
visit admin_hooks_path
fill_in 'hook_url', with: url
check 'Enable SSL verification'
expect { click_button 'Add System Hook' }.to change(SystemHook, :count).by(1)
expect(page).to have_content 'SSL Verification: enabled'
expect(current_path).to eq(admin_hooks_path)
expect(page).to have_content(url)
end
end
describe "Test" do
before do
WebMock.stub_request(:post, @system_hook.url)
visit admin_hooks_path
click_link "Test Hook"
end
it { expect(current_path).to eq(admin_hooks_path) }
end
end