Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-01-12 21:08:22 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-01-12 21:08:22 +0300
commit93d7ee54f1920f37149d934c3420e8403463109a (patch)
treefda87dc589eecd8bedcd15c0bd20f11446b1d2cc /spec/lib/api
parentd549d413bb69f87ec26661ec96287bb4b25c32ff (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/lib/api')
-rw-r--r--spec/lib/api/helpers/packages_helpers_spec.rb27
1 files changed, 26 insertions, 1 deletions
diff --git a/spec/lib/api/helpers/packages_helpers_spec.rb b/spec/lib/api/helpers/packages_helpers_spec.rb
index d49aec1650d..de9d139a7b6 100644
--- a/spec/lib/api/helpers/packages_helpers_spec.rb
+++ b/spec/lib/api/helpers/packages_helpers_spec.rb
@@ -2,7 +2,7 @@
require 'spec_helper'
-RSpec.describe API::Helpers::PackagesHelpers do
+RSpec.describe API::Helpers::PackagesHelpers, feature_category: :package_registry do
let_it_be(:helper) { Class.new.include(API::Helpers).include(described_class).new }
let_it_be(:project) { create(:project) }
let_it_be(:group) { create(:group) }
@@ -17,6 +17,31 @@ RSpec.describe API::Helpers::PackagesHelpers do
expect(subject).to eq nil
end
+
+ context 'with an allowed required permission' do
+ subject { helper.authorize_packages_access!(project, :read_group) }
+
+ it 'authorizes packages access' do
+ expect(helper).to receive(:require_packages_enabled!)
+ expect(helper).not_to receive(:authorize_read_package!)
+ expect(helper).to receive(:authorize!).with(:read_group, project)
+
+ expect(subject).to eq nil
+ end
+ end
+
+ context 'with a not allowed permission' do
+ subject { helper.authorize_packages_access!(project, :read_permission) }
+
+ it 'rejects packages access' do
+ expect(helper).to receive(:require_packages_enabled!)
+ expect(helper).not_to receive(:authorize_read_package!)
+ expect(helper).not_to receive(:authorize!).with(:test_permission, project)
+ expect(helper).to receive(:forbidden!)
+
+ expect(subject).to eq nil
+ end
+ end
end
describe 'authorize_read_package!' do