diff options
Diffstat (limited to 'spec/support/shared_contexts/requests')
3 files changed, 21 insertions, 8 deletions
diff --git a/spec/support/shared_contexts/requests/api/conan_packages_shared_context.rb b/spec/support/shared_contexts/requests/api/conan_packages_shared_context.rb index 580ebf00dcb..f3bbb325475 100644 --- a/spec/support/shared_contexts/requests/api/conan_packages_shared_context.rb +++ b/spec/support/shared_contexts/requests/api/conan_packages_shared_context.rb @@ -22,7 +22,7 @@ RSpec.shared_context 'conan api setup' do let(:jwt_secret) do OpenSSL::HMAC.hexdigest( - OpenSSL::Digest::SHA256.new, + OpenSSL::Digest.new('SHA256'), base_secret, Gitlab::ConanToken::HMAC_KEY ) @@ -67,9 +67,9 @@ RSpec.shared_context 'conan file upload endpoints' do include WorkhorseHelpers include HttpBasicAuthHelpers + include_context 'workhorse headers' + let(:jwt) { build_jwt(personal_access_token) } - let(:workhorse_token) { JWT.encode({ 'iss' => 'gitlab-workhorse' }, Gitlab::Workhorse.secret, 'HS256') } - let(:workhorse_header) { { 'GitLab-Workhorse' => '1.0', Gitlab::Workhorse::INTERNAL_API_REQUEST_HEADER => workhorse_token } } - let(:headers_with_token) { build_token_auth_header(jwt.encoded).merge(workhorse_header) } + let(:headers_with_token) { build_token_auth_header(jwt.encoded).merge(workhorse_headers) } let(:recipe_path) { "foo/bar/#{project.full_path.tr('/', '+')}/baz"} end diff --git a/spec/support/shared_contexts/requests/api/npm_packages_shared_context.rb b/spec/support/shared_contexts/requests/api/npm_packages_shared_context.rb index 7c23ec33cf8..60a29d78084 100644 --- a/spec/support/shared_contexts/requests/api/npm_packages_shared_context.rb +++ b/spec/support/shared_contexts/requests/api/npm_packages_shared_context.rb @@ -4,10 +4,10 @@ RSpec.shared_context 'npm api setup' do include PackagesManagerApiSpecHelpers include HttpBasicAuthHelpers - let_it_be(:user) { create(:user) } + let_it_be(:user, reload: true) { create(:user) } let_it_be(:group) { create(:group) } let_it_be(:project, reload: true) { create(:project, :public, namespace: group) } - let_it_be(:package, reload: true) { create(:npm_package, project: project) } + let_it_be(:package, reload: true) { create(:npm_package, project: project, name: "@#{group.path}/scoped_package") } let_it_be(:token) { create(:oauth_access_token, scopes: 'api', resource_owner: user) } let_it_be(:personal_access_token) { create(:personal_access_token, user: user) } let_it_be(:job, reload: true) { create(:ci_build, user: user, status: :running) } @@ -15,8 +15,15 @@ RSpec.shared_context 'npm api setup' do let_it_be(:project_deploy_token) { create(:project_deploy_token, deploy_token: deploy_token, project: project) } let(:package_name) { package.name } +end - before do - project.add_developer(user) +RSpec.shared_context 'set package name from package name type' do + let(:package_name) do + case package_name_type + when :scoped_naming_convention + "@#{group.path}/scoped-package" + when :non_existing + 'non-existing-package' + end end end diff --git a/spec/support/shared_contexts/requests/api/workhorse_shared_context.rb b/spec/support/shared_contexts/requests/api/workhorse_shared_context.rb new file mode 100644 index 00000000000..36be64339a2 --- /dev/null +++ b/spec/support/shared_contexts/requests/api/workhorse_shared_context.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +RSpec.shared_context 'workhorse headers' do + let(:workhorse_token) { JWT.encode({ 'iss' => 'gitlab-workhorse' }, Gitlab::Workhorse.secret, 'HS256') } + let(:workhorse_headers) { { 'GitLab-Workhorse' => '1.0', Gitlab::Workhorse::INTERNAL_API_REQUEST_HEADER => workhorse_token } } +end |