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:
Diffstat (limited to 'spec/policies/project_policy_spec.rb')
-rw-r--r--spec/policies/project_policy_spec.rb53
1 files changed, 0 insertions, 53 deletions
diff --git a/spec/policies/project_policy_spec.rb b/spec/policies/project_policy_spec.rb
index 42f8bf3137b..125ed818bc6 100644
--- a/spec/policies/project_policy_spec.rb
+++ b/spec/policies/project_policy_spec.rb
@@ -1,7 +1,6 @@
require 'spec_helper'
describe ProjectPolicy do
- include ExternalAuthorizationServiceHelpers
include_context 'ProjectPolicy context'
set(:guest) { create(:user) }
set(:reporter) { create(:user) }
@@ -293,56 +292,4 @@ describe ProjectPolicy do
projects: [clusterable])
end
end
-
- context 'reading a project' do
- it 'allows access when a user has read access to the repo' do
- expect(described_class.new(owner, project)).to be_allowed(:read_project)
- expect(described_class.new(developer, project)).to be_allowed(:read_project)
- expect(described_class.new(admin, project)).to be_allowed(:read_project)
- end
-
- it 'never checks the external service' do
- expect(::Gitlab::ExternalAuthorization).not_to receive(:access_allowed?)
-
- expect(described_class.new(owner, project)).to be_allowed(:read_project)
- end
-
- context 'with an external authorization service' do
- before do
- enable_external_authorization_service_check
- end
-
- it 'allows access when the external service allows it' do
- external_service_allow_access(owner, project)
- external_service_allow_access(developer, project)
-
- expect(described_class.new(owner, project)).to be_allowed(:read_project)
- expect(described_class.new(developer, project)).to be_allowed(:read_project)
- end
-
- it 'does not check the external service for admins and allows access' do
- expect(::Gitlab::ExternalAuthorization).not_to receive(:access_allowed?)
-
- expect(described_class.new(admin, project)).to be_allowed(:read_project)
- end
-
- it 'prevents all but seeing a public project in a list when access is denied' do
- [developer, owner, build(:user), nil].each do |user|
- external_service_deny_access(user, project)
- policy = described_class.new(user, project)
-
- expect(policy).not_to be_allowed(:read_project)
- expect(policy).not_to be_allowed(:owner_access)
- expect(policy).not_to be_allowed(:change_namespace)
- end
- end
-
- it 'passes the full path to external authorization for logging purposes' do
- expect(::Gitlab::ExternalAuthorization)
- .to receive(:access_allowed?).with(owner, 'default_label', project.full_path).and_call_original
-
- described_class.new(owner, project).allowed?(:read_project)
- end
- end
- end
end