From bbd38033817022e764b967b678ba65ed9c862296 Mon Sep 17 00:00:00 2001 From: Henne Vogelsang Date: Tue, 15 Mar 2022 13:40:52 +0100 Subject: [PATCH] No need for a request spec for this --- .../controllers/source_controller_spec.rb | 7 +++ .../spec/requests/package_undelete_spec.rb | 56 ------------------- .../requests/requests_authentification.rb | 41 -------------- 3 files changed, 7 insertions(+), 97 deletions(-) delete mode 100644 src/api/spec/requests/package_undelete_spec.rb delete mode 100644 src/api/spec/support/requests/requests_authentification.rb diff --git a/src/api/spec/controllers/source_controller_spec.rb b/src/api/spec/controllers/source_controller_spec.rb index b4d2509a284b..0108aa89577e 100644 --- a/src/api/spec/controllers/source_controller_spec.rb +++ b/src/api/spec/controllers/source_controller_spec.rb @@ -54,4 +54,11 @@ it { expect(response.status).to eq(302) } end end + + describe 'POST #package_command_undelete' do + # TODO: + # - permissions + # - params[:time] permission + # - maybe refactor to Package.restore? + end end diff --git a/src/api/spec/requests/package_undelete_spec.rb b/src/api/spec/requests/package_undelete_spec.rb deleted file mode 100644 index 7915bc7d09cf..000000000000 --- a/src/api/spec/requests/package_undelete_spec.rb +++ /dev/null @@ -1,56 +0,0 @@ -require 'rails_helper' - -RSpec.describe 'Undelete Package', vcr: true, type: :request do - let(:user) { create(:confirmed_user, :with_home, login: 'user') } - let(:package) { create(:package, project: user.home_project, name: 'package') } - - # store it to avoid accessing deleted packages - let!(:package_source_path) { package.source_path } - - def delete_and_undelete - api_delete(package_source_path) - expect(response).to have_http_status(:success) - api_post(package_source_path, params: { cmd: 'undelete' }) - expect(response).to have_http_status(:success) - api_get(package_source_path) - expect(response).to have_http_status(:success) - end - - before do - login user - end - - context 'plain package' do - it 'can be deleted and undeleted' do - delete_and_undelete - end - end - - context 'patchinfo package' do - let(:package) { create(:package, project: user.home_project, name: 'patchinfo') } - let(:patchinfo_xml) do - <<~XML.strip_heredoc - - security - - moderate - user - blah blue - - Security update for someone - - XML - end - - before do - api_put package.source_path('_patchinfo'), params: patchinfo_xml - end - - it 'can be deleted and undeleted' do - expect(package).to be_is_patchinfo - delete_and_undelete - npackage = user.home_project.packages.find_by(name: 'patchinfo') - expect(npackage).to be_is_patchinfo - end - end -end diff --git a/src/api/spec/support/requests/requests_authentification.rb b/src/api/spec/support/requests/requests_authentification.rb deleted file mode 100644 index 07ca2f02b63a..000000000000 --- a/src/api/spec/support/requests/requests_authentification.rb +++ /dev/null @@ -1,41 +0,0 @@ -module RequestsAuthentication - def login(user) - @current_user = user - end - - def logout - @current_user = nil - end - - # rubocop:disable Rails/HttpPositionalArguments - def api_delete(url, opts = {}) - delete url, wrap_opts(opts) - end - - def api_get(url, opts = {}) - get url, wrap_opts(opts) - end - - def api_post(url, opts = {}) - post url, wrap_opts(opts) - end - - def api_put(url, opts = {}) - put url, wrap_opts(opts) - end - # rubocop:enable Rails/HttpPositionalArguments - - def wrap_opts(opts) - opts[:headers] ||= {} - opts[:headers]['HTTP_ACCEPT'] = 'application/xml' - if @current_user - opts[:headers]['HTTP_AUTHORIZATION'] = 'Basic ' + - Base64.encode64("#{@current_user.login}:#{@current_user.password}") - end - opts - end -end - -RSpec.configure do |c| - c.include RequestsAuthentication, type: :request -end