27 lines
846 B
Ruby
27 lines
846 B
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.shared_examples 'renders correct panels' do
|
|
it 'renders correct action on error' do
|
|
expect_next_instance_of(ApplicationSettings::UpdateService) do |service|
|
|
allow(service).to receive(:execute).and_return(false)
|
|
end
|
|
|
|
patch action, params: { application_setting: { unused_param: true } }
|
|
|
|
expect(subject).to render_template(action)
|
|
end
|
|
|
|
it 'redirects to same panel on success' do
|
|
expect_next_instance_of(ApplicationSettings::UpdateService) do |service|
|
|
allow(service).to receive(:execute).and_return(true)
|
|
end
|
|
|
|
referer_path = public_send("#{action}_admin_application_settings_path")
|
|
request.env["HTTP_REFERER"] = referer_path
|
|
|
|
patch action, params: { application_setting: { unused_param: true } }
|
|
|
|
expect(subject).to redirect_to(referer_path)
|
|
end
|
|
end
|