debian-mirror-gitlab/spec/support/shared_examples/services/snippets_shared_examples.rb

43 lines
936 B
Ruby
Raw Normal View History

2020-05-24 23:13:21 +05:30
# frozen_string_literal: true
2021-03-11 19:13:27 +05:30
RSpec.shared_examples 'checking spam' do
before do
allow_next_instance_of(UserAgentDetailService) do |instance|
allow(instance).to receive(:create)
2020-05-24 23:13:21 +05:30
end
2021-03-11 19:13:27 +05:30
end
2020-05-24 23:13:21 +05:30
2021-03-11 19:13:27 +05:30
it 'executes SpamActionService' do
expect_next_instance_of(
Spam::SpamActionService,
{
spammable: kind_of(Snippet),
2021-09-30 23:02:18 +05:30
spam_params: spam_params,
2021-03-11 19:13:27 +05:30
user: an_instance_of(User),
action: action
}
) do |instance|
2021-09-30 23:02:18 +05:30
expect(instance).to receive(:execute)
2020-05-24 23:13:21 +05:30
end
2021-03-11 19:13:27 +05:30
subject
2020-05-24 23:13:21 +05:30
end
end
2020-11-24 15:15:51 +05:30
shared_examples 'invalid params error response' do
before do
allow_next_instance_of(described_class) do |service|
allow(service).to receive(:valid_params?).and_return false
end
end
it 'responds to errors appropriately' do
response = subject
aggregate_failures do
expect(response).to be_error
expect(response.http_status).to eq 422
end
end
end