diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-07-20 15:40:28 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-07-20 15:40:28 +0000 |
commit | b595cb0c1dec83de5bdee18284abe86614bed33b (patch) | |
tree | 8c3d4540f193c5ff98019352f554e921b3a41a72 /spec/workers/web_hooks/destroy_worker_spec.rb | |
parent | 2f9104a328fc8a4bddeaa4627b595166d24671d0 (diff) | |
download | gitlab-ce-b595cb0c1dec83de5bdee18284abe86614bed33b.tar.gz |
Add latest changes from gitlab-org/gitlab@15-2-stable-eev15.2.0-rc42
Diffstat (limited to 'spec/workers/web_hooks/destroy_worker_spec.rb')
-rw-r--r-- | spec/workers/web_hooks/destroy_worker_spec.rb | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/spec/workers/web_hooks/destroy_worker_spec.rb b/spec/workers/web_hooks/destroy_worker_spec.rb deleted file mode 100644 index 8e75610a031..00000000000 --- a/spec/workers/web_hooks/destroy_worker_spec.rb +++ /dev/null @@ -1,64 +0,0 @@ -# frozen_string_literal: true - -require 'spec_helper' - -RSpec.describe WebHooks::DestroyWorker do - include AfterNextHelpers - - let_it_be(:project) { create(:project) } - let_it_be(:user) { create(:user) } - - before_all do - project.add_maintainer(user) - end - - subject { described_class.new } - - describe "#perform" do - context 'with a Web hook' do - let!(:hook) { create(:project_hook, project: project) } - let!(:other_hook) { create(:project_hook, project: project) } - let!(:log) { create(:web_hook_log, web_hook: hook) } - let!(:other_log) { create(:web_hook_log, web_hook: other_hook) } - - it "deletes the Web hook and logs", :aggregate_failures do - expect(WebHooks::LogDestroyWorker).to receive(:perform_async) - - expect { subject.perform(user.id, hook.id) } - .to change { WebHook.count }.from(2).to(1) - - expect(WebHook.find(other_hook.id)).to be_present - expect(WebHookLog.find(other_log.id)).to be_present - end - - it "raises and tracks an error if destroy failed" do - expect_next(::WebHooks::DestroyService) - .to receive(:sync_destroy).with(anything) - .and_return(ServiceResponse.error(message: "failed")) - - expect(Gitlab::ErrorTracking) - .to receive(:track_and_raise_exception) - .with(an_instance_of(described_class::DestroyError), { web_hook_id: hook.id }) - .and_call_original - - expect { subject.perform(user.id, hook.id) }.to raise_error(described_class::DestroyError) - end - - context 'with unknown hook' do - it 'does not raise an error' do - expect { subject.perform(user.id, non_existing_record_id) }.not_to raise_error - - expect(WebHook.count).to eq(2) - end - end - - context 'with unknown user' do - it 'does not raise an error' do - expect { subject.perform(non_existing_record_id, hook.id) }.not_to raise_error - - expect(WebHook.count).to eq(2) - end - end - end - end -end |