diff options
Diffstat (limited to 'spec/policies')
23 files changed, 476 insertions, 476 deletions
diff --git a/spec/policies/application_setting/term_policy_spec.rb b/spec/policies/application_setting/term_policy_spec.rb index 93b5ebf5f72..7f7fce19dc6 100644 --- a/spec/policies/application_setting/term_policy_spec.rb +++ b/spec/policies/application_setting/term_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe ApplicationSetting::TermPolicy do include TermsHelper @@ -9,40 +9,40 @@ describe ApplicationSetting::TermPolicy do subject(:policy) { described_class.new(user, term) } before do - stub_env('IN_MEMORY_APPLICATION_SETTINGS', 'false') + stub_env("IN_MEMORY_APPLICATION_SETTINGS", "false") end - it 'has the correct permissions', :aggregate_failures do + it "has the correct permissions", :aggregate_failures do is_expected.to be_allowed(:accept_terms) is_expected.to be_allowed(:decline_terms) end - context 'for anonymous users' do + context "for anonymous users" do let(:user) { nil } - it 'has the correct permissions', :aggregate_failures do + it "has the correct permissions", :aggregate_failures do is_expected.to be_disallowed(:accept_terms) is_expected.to be_disallowed(:decline_terms) end end - context 'when the terms are not current' do + context "when the terms are not current" do before do create(:term) end - it 'has the correct permissions', :aggregate_failures do + it "has the correct permissions", :aggregate_failures do is_expected.to be_disallowed(:accept_terms) is_expected.to be_disallowed(:decline_terms) end end - context 'when the user already accepted the terms' do + context "when the user already accepted the terms" do before do accept_terms(user) end - it 'has the correct permissions', :aggregate_failures do + it "has the correct permissions", :aggregate_failures do is_expected.to be_disallowed(:accept_terms) is_expected.to be_allowed(:decline_terms) end diff --git a/spec/policies/base_policy_spec.rb b/spec/policies/base_policy_spec.rb index c03d95b34db..9a8f744878d 100644 --- a/spec/policies/base_policy_spec.rb +++ b/spec/policies/base_policy_spec.rb @@ -1,18 +1,18 @@ -require 'spec_helper' +require "spec_helper" describe BasePolicy do - describe '.class_for' do - it 'detects policy class based on the subject ancestors' do + describe ".class_for" do + it "detects policy class based on the subject ancestors" do expect(DeclarativePolicy.class_for(GenericCommitStatus.new)).to eq(CommitStatusPolicy) end - it 'detects policy class for a presented subject' do + it "detects policy class for a presented subject" do presentee = Ci::BuildPresenter.new(Ci::Build.new) expect(DeclarativePolicy.class_for(presentee)).to eq(Ci::BuildPolicy) end - it 'uses GlobalPolicy when :global is given' do + it "uses GlobalPolicy when :global is given" do expect(DeclarativePolicy.class_for(:global)).to eq(GlobalPolicy) end end diff --git a/spec/policies/board_policy_spec.rb b/spec/policies/board_policy_spec.rb index 4b76d65ef69..2285be03b80 100644 --- a/spec/policies/board_policy_spec.rb +++ b/spec/policies/board_policy_spec.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require 'spec_helper' +require "spec_helper" describe BoardPolicy do let(:user) { create(:user) } @@ -13,7 +13,7 @@ describe BoardPolicy do [ :read_parent, :read_milestone, - :read_issue + :read_issue, ] end @@ -25,10 +25,10 @@ describe BoardPolicy do permissions.each { |p| is_expected.not_to be_allowed(p) } end - context 'group board' do + context "group board" do subject { described_class.new(user, group_board) } - context 'user has access' do + context "user has access" do before do group.add_developer(user) end @@ -38,17 +38,17 @@ describe BoardPolicy do end end - context 'user does not have access' do + context "user does not have access" do it do expect_disallowed(*board_permissions) end end end - context 'project board' do + context "project board" do subject { described_class.new(user, project_board) } - context 'user has access' do + context "user has access" do before do project.add_developer(user) end @@ -58,7 +58,7 @@ describe BoardPolicy do end end - context 'user does not have access' do + context "user does not have access" do it do expect_disallowed(*board_permissions) end diff --git a/spec/policies/ci/build_policy_spec.rb b/spec/policies/ci/build_policy_spec.rb index 79a616899fa..9275d6fec32 100644 --- a/spec/policies/ci/build_policy_spec.rb +++ b/spec/policies/ci/build_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe Ci::BuildPolicy do let(:user) { create(:user) } @@ -9,97 +9,97 @@ describe Ci::BuildPolicy do described_class.new(user, build) end - shared_context 'public pipelines disabled' do + shared_context "public pipelines disabled" do before do project.update_attribute(:public_builds, false) end end - describe '#rules' do - context 'when user does not have access to the project' do + describe "#rules" do + context "when user does not have access to the project" do let(:project) { create(:project, :private) } - context 'when public builds are enabled' do - it 'does not include ability to read build' do + context "when public builds are enabled" do + it "does not include ability to read build" do expect(policy).not_to be_allowed :read_build end end - context 'when public builds are disabled' do - include_context 'public pipelines disabled' + context "when public builds are disabled" do + include_context "public pipelines disabled" - it 'does not include ability to read build' do + it "does not include ability to read build" do expect(policy).not_to be_allowed :read_build end end end - context 'when anonymous user has access to the project' do + context "when anonymous user has access to the project" do let(:project) { create(:project, :public) } - context 'when public builds are enabled' do - it 'includes ability to read build' do + context "when public builds are enabled" do + it "includes ability to read build" do expect(policy).to be_allowed :read_build end end - context 'when public builds are disabled' do - include_context 'public pipelines disabled' + context "when public builds are disabled" do + include_context "public pipelines disabled" - it 'does not include ability to read build' do + it "does not include ability to read build" do expect(policy).not_to be_allowed :read_build end end end - context 'when team member has access to the project' do + context "when team member has access to the project" do let(:project) { create(:project, :public) } - context 'team member is a guest' do + context "team member is a guest" do before do project.add_guest(user) end - context 'when public builds are enabled' do - it 'includes ability to read build' do + context "when public builds are enabled" do + it "includes ability to read build" do expect(policy).to be_allowed :read_build end end - context 'when public builds are disabled' do - include_context 'public pipelines disabled' + context "when public builds are disabled" do + include_context "public pipelines disabled" - it 'does not include ability to read build' do + it "does not include ability to read build" do expect(policy).not_to be_allowed :read_build end end end - context 'team member is a reporter' do + context "team member is a reporter" do before do project.add_reporter(user) end - context 'when public builds are enabled' do - it 'includes ability to read build' do + context "when public builds are enabled" do + it "includes ability to read build" do expect(policy).to be_allowed :read_build end end - context 'when public builds are disabled' do - include_context 'public pipelines disabled' + context "when public builds are disabled" do + include_context "public pipelines disabled" - it 'does not include ability to read build' do + it "does not include ability to read build" do expect(policy).to be_allowed :read_build end end end - context 'when maintainer is allowed to push to pipeline branch' do + context "when maintainer is allowed to push to pipeline branch" do let(:project) { create(:project, :public) } let(:owner) { user } - it 'enables update_build if user is maintainer' do + it "enables update_build if user is maintainer" do allow_any_instance_of(Project).to receive(:empty_repo?).and_return(false) allow_any_instance_of(Project).to receive(:branch_allows_collaboration?).and_return(true) @@ -109,131 +109,131 @@ describe Ci::BuildPolicy do end end - describe 'rules for protected ref' do + describe "rules for protected ref" do let(:project) { create(:project, :repository) } - let(:build) { create(:ci_build, ref: 'some-ref', pipeline: pipeline) } + let(:build) { create(:ci_build, ref: "some-ref", pipeline: pipeline) } before do project.add_developer(user) end - context 'when no one can push or merge to the branch' do + context "when no one can push or merge to the branch" do before do create(:protected_branch, :no_one_can_push, - name: build.ref, project: project) + name: build.ref, project: project) end - it 'does not include ability to update build' do + it "does not include ability to update build" do expect(policy).to be_disallowed :update_build end end - context 'when developers can push to the branch' do + context "when developers can push to the branch" do before do create(:protected_branch, :developers_can_merge, - name: build.ref, project: project) + name: build.ref, project: project) end - it 'includes ability to update build' do + it "includes ability to update build" do expect(policy).to be_allowed :update_build end end - context 'when no one can create the tag' do + context "when no one can create the tag" do before do create(:protected_tag, :no_one_can_create, - name: build.ref, project: project) + name: build.ref, project: project) build.update(tag: true) end - it 'does not include ability to update build' do + it "does not include ability to update build" do expect(policy).to be_disallowed :update_build end end - context 'when no one can create the tag but it is not a tag' do + context "when no one can create the tag but it is not a tag" do before do create(:protected_tag, :no_one_can_create, - name: build.ref, project: project) + name: build.ref, project: project) end - it 'includes ability to update build' do + it "includes ability to update build" do expect(policy).to be_allowed :update_build end end end - describe 'rules for erase build' do + describe "rules for erase build" do let(:project) { create(:project, :repository) } - let(:build) { create(:ci_build, pipeline: pipeline, ref: 'some-ref', user: owner) } + let(:build) { create(:ci_build, pipeline: pipeline, ref: "some-ref", user: owner) } - context 'when a developer erases a build' do + context "when a developer erases a build" do before do project.add_developer(user) end - context 'when developers can push to the branch' do + context "when developers can push to the branch" do before do create(:protected_branch, :developers_can_push, - name: build.ref, project: project) + name: build.ref, project: project) end - context 'when the build was created by the developer' do + context "when the build was created by the developer" do let(:owner) { user } it { expect(policy).to be_allowed :erase_build } end - context 'when the build was created by the other' do + context "when the build was created by the other" do let(:owner) { create(:user) } it { expect(policy).to be_disallowed :erase_build } end end - context 'when no one can push or merge to the branch' do + context "when no one can push or merge to the branch" do let(:owner) { user } before do create(:protected_branch, :no_one_can_push, :no_one_can_merge, - name: build.ref, project: project) + name: build.ref, project: project) end it { expect(policy).to be_disallowed :erase_build } end end - context 'when a maintainer erases a build' do + context "when a maintainer erases a build" do before do project.add_maintainer(user) end - context 'when maintainers can push to the branch' do + context "when maintainers can push to the branch" do before do create(:protected_branch, :maintainers_can_push, - name: build.ref, project: project) + name: build.ref, project: project) end - context 'when the build was created by the maintainer' do + context "when the build was created by the maintainer" do let(:owner) { user } it { expect(policy).to be_allowed :erase_build } end - context 'when the build was created by the other' do + context "when the build was created by the other" do let(:owner) { create(:user) } it { expect(policy).to be_allowed :erase_build } end end - context 'when no one can push or merge to the branch' do + context "when no one can push or merge to the branch" do let(:owner) { user } before do create(:protected_branch, :no_one_can_push, :no_one_can_merge, - name: build.ref, project: project) + name: build.ref, project: project) end it { expect(policy).to be_disallowed :erase_build } diff --git a/spec/policies/ci/pipeline_policy_spec.rb b/spec/policies/ci/pipeline_policy_spec.rb index 844d96017de..69cd561748f 100644 --- a/spec/policies/ci/pipeline_policy_spec.rb +++ b/spec/policies/ci/pipeline_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe Ci::PipelinePolicy, :models do let(:user) { create(:user) } @@ -8,66 +8,66 @@ describe Ci::PipelinePolicy, :models do described_class.new(user, pipeline) end - describe 'rules' do - describe 'rules for protected ref' do + describe "rules" do + describe "rules for protected ref" do let(:project) { create(:project, :repository) } before do project.add_developer(user) end - context 'when no one can push or merge to the branch' do + context "when no one can push or merge to the branch" do before do create(:protected_branch, :no_one_can_push, - name: pipeline.ref, project: project) + name: pipeline.ref, project: project) end - it 'does not include ability to update pipeline' do + it "does not include ability to update pipeline" do expect(policy).to be_disallowed :update_pipeline end end - context 'when developers can push to the branch' do + context "when developers can push to the branch" do before do create(:protected_branch, :developers_can_merge, - name: pipeline.ref, project: project) + name: pipeline.ref, project: project) end - it 'includes ability to update pipeline' do + it "includes ability to update pipeline" do expect(policy).to be_allowed :update_pipeline end end - context 'when no one can create the tag' do + context "when no one can create the tag" do before do create(:protected_tag, :no_one_can_create, - name: pipeline.ref, project: project) + name: pipeline.ref, project: project) pipeline.update(tag: true) end - it 'does not include ability to update pipeline' do + it "does not include ability to update pipeline" do expect(policy).to be_disallowed :update_pipeline end end - context 'when no one can create the tag but it is not a tag' do + context "when no one can create the tag but it is not a tag" do before do create(:protected_tag, :no_one_can_create, - name: pipeline.ref, project: project) + name: pipeline.ref, project: project) end - it 'includes ability to update pipeline' do + it "includes ability to update pipeline" do expect(policy).to be_allowed :update_pipeline end end end - context 'when maintainer is allowed to push to pipeline branch' do + context "when maintainer is allowed to push to pipeline branch" do let(:project) { create(:project, :public) } let(:owner) { user } - it 'enables update_pipeline if user is maintainer' do + it "enables update_pipeline if user is maintainer" do allow_any_instance_of(Project).to receive(:empty_repo?).and_return(false) allow_any_instance_of(Project).to receive(:branch_allows_collaboration?).and_return(true) @@ -75,27 +75,27 @@ describe Ci::PipelinePolicy, :models do end end - context 'when user does not have access to internal CI' do + context "when user does not have access to internal CI" do let(:project) { create(:project, :builds_disabled, :public) } - it 'disallows the user from reading the pipeline' do + it "disallows the user from reading the pipeline" do expect(policy).to be_disallowed :read_pipeline end end - describe 'destroy_pipeline' do + describe "destroy_pipeline" do let(:project) { create(:project, :public) } - context 'when user has owner access' do + context "when user has owner access" do let(:user) { project.owner } - it 'is enabled' do + it "is enabled" do expect(policy).to be_allowed :destroy_pipeline end end - context 'when user is not owner' do - it 'is disabled' do + context "when user is not owner" do + it "is disabled" do expect(policy).not_to be_allowed :destroy_pipeline end end diff --git a/spec/policies/ci/pipeline_schedule_policy_spec.rb b/spec/policies/ci/pipeline_schedule_policy_spec.rb index 5a56e91cd69..8716e0839c4 100644 --- a/spec/policies/ci/pipeline_schedule_policy_spec.rb +++ b/spec/policies/ci/pipeline_schedule_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe Ci::PipelineSchedulePolicy, :models do set(:user) { create(:user) } @@ -9,87 +9,87 @@ describe Ci::PipelineSchedulePolicy, :models do described_class.new(user, pipeline_schedule) end - describe 'rules' do - describe 'rules for protected ref' do + describe "rules" do + describe "rules for protected ref" do before do project.add_developer(user) end - context 'when no one can push or merge to the branch' do + context "when no one can push or merge to the branch" do before do create(:protected_branch, :no_one_can_push, - name: pipeline_schedule.ref, project: project) + name: pipeline_schedule.ref, project: project) end - it 'does not include ability to play pipeline schedule' do + it "does not include ability to play pipeline schedule" do expect(policy).to be_disallowed :play_pipeline_schedule end end - context 'when developers can push to the branch' do + context "when developers can push to the branch" do before do create(:protected_branch, :developers_can_merge, - name: pipeline_schedule.ref, project: project) + name: pipeline_schedule.ref, project: project) end - it 'includes ability to update pipeline' do + it "includes ability to update pipeline" do expect(policy).to be_allowed :play_pipeline_schedule end end - context 'when no one can create the tag' do - let(:tag) { 'v1.0.0' } + context "when no one can create the tag" do + let(:tag) { "v1.0.0" } before do pipeline_schedule.update(ref: tag) create(:protected_tag, :no_one_can_create, - name: pipeline_schedule.ref, project: project) + name: pipeline_schedule.ref, project: project) end - it 'does not include ability to play pipeline schedule' do + it "does not include ability to play pipeline schedule" do expect(policy).to be_disallowed :play_pipeline_schedule end end - context 'when no one can create the tag but it is not a tag' do + context "when no one can create the tag but it is not a tag" do before do create(:protected_tag, :no_one_can_create, - name: pipeline_schedule.ref, project: project) + name: pipeline_schedule.ref, project: project) end - it 'includes ability to play pipeline schedule' do + it "includes ability to play pipeline schedule" do expect(policy).to be_allowed :play_pipeline_schedule end end end - describe 'rules for owner of schedule' do + describe "rules for owner of schedule" do before do project.add_developer(user) pipeline_schedule.update(owner: user) end - it 'includes abilities to do all operations on pipeline schedule' do + it "includes abilities to do all operations on pipeline schedule" do expect(policy).to be_allowed :play_pipeline_schedule expect(policy).to be_allowed :update_pipeline_schedule expect(policy).to be_allowed :admin_pipeline_schedule end end - describe 'rules for a maintainer' do + describe "rules for a maintainer" do before do project.add_maintainer(user) end - it 'includes abilities to do all operations on pipeline schedule' do + it "includes abilities to do all operations on pipeline schedule" do expect(policy).to be_allowed :play_pipeline_schedule expect(policy).to be_allowed :update_pipeline_schedule expect(policy).to be_allowed :admin_pipeline_schedule end end - describe 'rules for non-owner of schedule' do + describe "rules for non-owner of schedule" do let(:owner) { create(:user) } before do @@ -98,7 +98,7 @@ describe Ci::PipelineSchedulePolicy, :models do pipeline_schedule.update(owner: owner) end - it 'includes abilities to take ownership' do + it "includes abilities to take ownership" do expect(policy).to be_allowed :take_ownership_pipeline_schedule end end diff --git a/spec/policies/ci/trigger_policy_spec.rb b/spec/policies/ci/trigger_policy_spec.rb index d8a63066265..e68f68cddd4 100644 --- a/spec/policies/ci/trigger_policy_spec.rb +++ b/spec/policies/ci/trigger_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe Ci::TriggerPolicy do let(:user) { create(:user) } @@ -9,94 +9,94 @@ describe Ci::TriggerPolicy do described_class.new(user, trigger) end - shared_examples 'allows to admin and manage trigger' do - it 'does include ability to admin trigger' do + shared_examples "allows to admin and manage trigger" do + it "does include ability to admin trigger" do expect(policies).to be_allowed :admin_trigger end - it 'does include ability to manage trigger' do + it "does include ability to manage trigger" do expect(policies).to be_allowed :manage_trigger end end - shared_examples 'allows to manage trigger' do - it 'does not include ability to admin trigger' do + shared_examples "allows to manage trigger" do + it "does not include ability to admin trigger" do expect(policies).not_to be_allowed :admin_trigger end - it 'does include ability to manage trigger' do + it "does include ability to manage trigger" do expect(policies).to be_allowed :manage_trigger end end - shared_examples 'disallows to admin and manage trigger' do - it 'does not include ability to admin trigger' do + shared_examples "disallows to admin and manage trigger" do + it "does not include ability to admin trigger" do expect(policies).not_to be_allowed :admin_trigger end - it 'does not include ability to manage trigger' do + it "does not include ability to manage trigger" do expect(policies).not_to be_allowed :manage_trigger end end - describe '#rules' do - context 'when owner is undefined' do + describe "#rules" do + context "when owner is undefined" do let(:owner) { nil } - context 'when user is maintainer of the project' do + context "when user is maintainer of the project" do before do project.add_maintainer(user) end - it_behaves_like 'allows to admin and manage trigger' + it_behaves_like "allows to admin and manage trigger" end - context 'when user is developer of the project' do + context "when user is developer of the project" do before do project.add_developer(user) end - it_behaves_like 'disallows to admin and manage trigger' + it_behaves_like "disallows to admin and manage trigger" end - context 'when user is not member of the project' do - it_behaves_like 'disallows to admin and manage trigger' + context "when user is not member of the project" do + it_behaves_like "disallows to admin and manage trigger" end end - context 'when owner is an user' do + context "when owner is an user" do let(:owner) { user } - context 'when user is maintainer of the project' do + context "when user is maintainer of the project" do before do project.add_maintainer(user) end - it_behaves_like 'allows to admin and manage trigger' + it_behaves_like "allows to admin and manage trigger" end end - context 'when owner is another user' do + context "when owner is another user" do let(:owner) { create(:user) } - context 'when user is maintainer of the project' do + context "when user is maintainer of the project" do before do project.add_maintainer(user) end - it_behaves_like 'allows to manage trigger' + it_behaves_like "allows to manage trigger" end - context 'when user is developer of the project' do + context "when user is developer of the project" do before do project.add_developer(user) end - it_behaves_like 'disallows to admin and manage trigger' + it_behaves_like "disallows to admin and manage trigger" end - context 'when user is not member of the project' do - it_behaves_like 'disallows to admin and manage trigger' + context "when user is not member of the project" do + it_behaves_like "disallows to admin and manage trigger" end end end diff --git a/spec/policies/clusters/cluster_policy_spec.rb b/spec/policies/clusters/cluster_policy_spec.rb index b2f0ca1bc30..5930da861f2 100644 --- a/spec/policies/clusters/cluster_policy_spec.rb +++ b/spec/policies/clusters/cluster_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe Clusters::ClusterPolicy, :models do let(:cluster) { create(:cluster, :project) } @@ -6,8 +6,8 @@ describe Clusters::ClusterPolicy, :models do let(:user) { create(:user) } let(:policy) { described_class.new(user, cluster) } - describe 'rules' do - context 'when developer' do + describe "rules" do + context "when developer" do before do project.add_developer(user) end @@ -16,7 +16,7 @@ describe Clusters::ClusterPolicy, :models do it { expect(policy).to be_disallowed :admin_cluster } end - context 'when maintainer' do + context "when maintainer" do before do project.add_maintainer(user) end @@ -25,12 +25,12 @@ describe Clusters::ClusterPolicy, :models do it { expect(policy).to be_allowed :admin_cluster } end - context 'group cluster' do + context "group cluster" do let(:cluster) { create(:cluster, :group) } let(:group) { cluster.group } let(:project) { create(:project, namespace: group) } - context 'when group developer' do + context "when group developer" do before do group.add_developer(user) end @@ -39,7 +39,7 @@ describe Clusters::ClusterPolicy, :models do it { expect(policy).to be_disallowed :admin_cluster } end - context 'when group maintainer' do + context "when group maintainer" do before do group.add_maintainer(user) end @@ -48,7 +48,7 @@ describe Clusters::ClusterPolicy, :models do it { expect(policy).to be_allowed :admin_cluster } end - context 'when project maintainer' do + context "when project maintainer" do before do project.add_maintainer(user) end @@ -57,7 +57,7 @@ describe Clusters::ClusterPolicy, :models do it { expect(policy).to be_disallowed :admin_cluster } end - context 'when project developer' do + context "when project developer" do before do project.add_developer(user) end diff --git a/spec/policies/concerns/policy_actor_spec.rb b/spec/policies/concerns/policy_actor_spec.rb index 27db9710a38..68d8c38755f 100644 --- a/spec/policies/concerns/policy_actor_spec.rb +++ b/spec/policies/concerns/policy_actor_spec.rb @@ -1,9 +1,9 @@ # frozen_string_literal: true -require 'spec_helper' +require "spec_helper" describe PolicyActor do - it 'implements all the methods from user' do + it "implements all the methods from user" do methods = subject.instance_methods # User.instance_methods do not return all methods until an instance is diff --git a/spec/policies/deploy_key_policy_spec.rb b/spec/policies/deploy_key_policy_spec.rb index e7263d49613..d81afb37ef3 100644 --- a/spec/policies/deploy_key_policy_spec.rb +++ b/spec/policies/deploy_key_policy_spec.rb @@ -1,13 +1,13 @@ -require 'spec_helper' +require "spec_helper" describe DeployKeyPolicy do subject { described_class.new(current_user, deploy_key) } - describe 'updating a deploy_key' do - context 'when a regular user' do + describe "updating a deploy_key" do + context "when a regular user" do let(:current_user) { create(:user) } - context 'tries to update private deploy key attached to project' do + context "tries to update private deploy key attached to project" do let(:deploy_key) { create(:deploy_key, public: false) } let(:project) { create(:project_empty_repo) } @@ -19,7 +19,7 @@ describe DeployKeyPolicy do it { is_expected.to be_allowed(:update_deploy_key) } end - context 'tries to update private deploy key attached to other project' do + context "tries to update private deploy key attached to other project" do let(:deploy_key) { create(:deploy_key, public: false) } let(:other_project) { create(:project_empty_repo) } @@ -30,23 +30,23 @@ describe DeployKeyPolicy do it { is_expected.to be_disallowed(:update_deploy_key) } end - context 'tries to update public deploy key' do + context "tries to update public deploy key" do let(:deploy_key) { create(:another_deploy_key, public: true) } it { is_expected.to be_disallowed(:update_deploy_key) } end end - context 'when an admin user' do + context "when an admin user" do let(:current_user) { create(:user, :admin) } - context ' tries to update private deploy key' do + context " tries to update private deploy key" do let(:deploy_key) { create(:deploy_key, public: false) } it { is_expected.to be_allowed(:update_deploy_key) } end - context 'when an admin user tries to update public deploy key' do + context "when an admin user tries to update public deploy key" do let(:deploy_key) { create(:another_deploy_key, public: true) } it { is_expected.to be_allowed(:update_deploy_key) } diff --git a/spec/policies/deploy_token_policy_spec.rb b/spec/policies/deploy_token_policy_spec.rb index cef5a4a22bc..0fd444fcaba 100644 --- a/spec/policies/deploy_token_policy_spec.rb +++ b/spec/policies/deploy_token_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe DeployTokenPolicy do let(:current_user) { create(:user) } @@ -7,8 +7,8 @@ describe DeployTokenPolicy do subject { described_class.new(current_user, deploy_token) } - describe 'creating a deploy key' do - context 'when user is maintainer' do + describe "creating a deploy key" do + context "when user is maintainer" do before do project.add_maintainer(current_user) end @@ -16,7 +16,7 @@ describe DeployTokenPolicy do it { is_expected.to be_allowed(:create_deploy_token) } end - context 'when user is not maintainer' do + context "when user is not maintainer" do before do project.add_developer(current_user) end @@ -25,8 +25,8 @@ describe DeployTokenPolicy do end end - describe 'updating a deploy key' do - context 'when user is maintainer' do + describe "updating a deploy key" do + context "when user is maintainer" do before do project.add_maintainer(current_user) end @@ -34,7 +34,7 @@ describe DeployTokenPolicy do it { is_expected.to be_allowed(:update_deploy_token) } end - context 'when user is not maintainer' do + context "when user is not maintainer" do before do project.add_developer(current_user) end diff --git a/spec/policies/environment_policy_spec.rb b/spec/policies/environment_policy_spec.rb index 0442b032e89..c6ea02609eb 100644 --- a/spec/policies/environment_policy_spec.rb +++ b/spec/policies/environment_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe EnvironmentPolicy do using RSpec::Parameterized::TableSyntax @@ -9,9 +9,9 @@ describe EnvironmentPolicy do described_class.new(user, environment) end - describe '#rules' do - shared_examples 'project permissions' do - context 'with stop action' do + describe "#rules" do + shared_examples "project permissions" do + context "with stop action" do let(:environment) do create(:environment, :with_review_app, project: project) end @@ -32,24 +32,24 @@ describe EnvironmentPolicy do it { expect(policy.allowed?(:stop_environment)).to be allowed? } end - context 'when an admin user' do + context "when an admin user" do let(:user) { create(:user, :admin) } it { expect(policy).to be_allowed :stop_environment } end - context 'with protected branch' do + context "with protected branch" do with_them do before do project.add_user(user, access_level) unless access_level.nil? create(:protected_branch, :no_one_can_push, - name: 'master', project: project) + name: "master", project: project) end it { expect(policy).to be_disallowed :stop_environment } end - context 'when an admin user' do + context "when an admin user" do let(:user) { create(:user, :admin) } it { expect(policy).to be_allowed :stop_environment } @@ -57,7 +57,7 @@ describe EnvironmentPolicy do end end - context 'without stop action' do + context "without stop action" do let(:environment) do create(:environment, project: project) end @@ -78,7 +78,7 @@ describe EnvironmentPolicy do it { expect(policy.allowed?(:stop_environment)).to be allowed? } end - context 'when an admin user' do + context "when an admin user" do let(:user) { create(:user, :admin) } it { expect(policy).to be_allowed :stop_environment } @@ -86,16 +86,16 @@ describe EnvironmentPolicy do end end - context 'when project is public' do + context "when project is public" do let(:project) { create(:project, :public, :repository) } - include_examples 'project permissions' + include_examples "project permissions" end - context 'when project is private' do + context "when project is private" do let(:project) { create(:project, :private, :repository) } - include_examples 'project permissions' + include_examples "project permissions" end end end diff --git a/spec/policies/global_policy_spec.rb b/spec/policies/global_policy_spec.rb index 30d68e7dc9d..c2ba4ad7ebc 100644 --- a/spec/policies/global_policy_spec.rb +++ b/spec/policies/global_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe GlobalPolicy do include TermsHelper @@ -77,13 +77,13 @@ describe GlobalPolicy do end end - describe 'custom attributes' do - context 'regular user' do + describe "custom attributes" do + context "regular user" do it { is_expected.not_to be_allowed(:read_custom_attribute) } it { is_expected.not_to be_allowed(:update_custom_attribute) } end - context 'admin' do + context "admin" do let(:current_user) { create(:user, :admin) } it { is_expected.to be_allowed(:read_custom_attribute) } @@ -91,7 +91,7 @@ describe GlobalPolicy do end end - shared_examples 'access allowed when terms accepted' do |ability| + shared_examples "access allowed when terms accepted" do |ability| it { is_expected.not_to be_allowed(ability) } it "allows #{ability} when the user accepted the terms" do @@ -101,39 +101,39 @@ describe GlobalPolicy do end end - describe 'API access' do - context 'regular user' do + describe "API access" do + context "regular user" do it { is_expected.to be_allowed(:access_api) } end - context 'admin' do + context "admin" do let(:current_user) { create(:admin) } it { is_expected.to be_allowed(:access_api) } end - context 'anonymous' do + context "anonymous" do let(:current_user) { nil } it { is_expected.to be_allowed(:access_api) } end - context 'when terms are enforced' do + context "when terms are enforced" do before do enforce_terms end - context 'regular user' do - it_behaves_like 'access allowed when terms accepted', :access_api + context "regular user" do + it_behaves_like "access allowed when terms accepted", :access_api end - context 'admin' do + context "admin" do let(:current_user) { create(:admin) } - it_behaves_like 'access allowed when terms accepted', :access_api + it_behaves_like "access allowed when terms accepted", :access_api end - context 'anonymous' do + context "anonymous" do let(:current_user) { nil } it { is_expected.to be_allowed(:access_api) } @@ -141,39 +141,39 @@ describe GlobalPolicy do end end - describe 'git access' do - describe 'regular user' do + describe "git access" do + describe "regular user" do it { is_expected.to be_allowed(:access_git) } end - describe 'admin' do + describe "admin" do let(:current_user) { create(:admin) } it { is_expected.to be_allowed(:access_git) } end - describe 'anonymous' do + describe "anonymous" do let(:current_user) { nil } it { is_expected.to be_allowed(:access_git) } end - context 'when terms are enforced' do + context "when terms are enforced" do before do enforce_terms end - context 'regular user' do - it_behaves_like 'access allowed when terms accepted', :access_git + context "regular user" do + it_behaves_like "access allowed when terms accepted", :access_git end - context 'admin' do + context "admin" do let(:current_user) { create(:admin) } - it_behaves_like 'access allowed when terms accepted', :access_git + it_behaves_like "access allowed when terms accepted", :access_git end - context 'anonymous' do + context "anonymous" do let(:current_user) { nil } it { is_expected.to be_allowed(:access_git) } @@ -181,11 +181,11 @@ describe GlobalPolicy do end end - describe 'read instance statistics' do - context 'regular user' do + describe "read instance statistics" do + context "regular user" do it { is_expected.to be_allowed(:read_instance_statistics) } - context 'when instance statistics are set to private' do + context "when instance statistics are set to private" do before do stub_application_setting(instance_statistics_visibility_private: true) end @@ -194,12 +194,12 @@ describe GlobalPolicy do end end - context 'admin' do + context "admin" do let(:current_user) { create(:admin) } it { is_expected.to be_allowed(:read_instance_statistics) } - context 'when instance statistics are set to private' do + context "when instance statistics are set to private" do before do stub_application_setting(instance_statistics_visibility_private: true) end @@ -208,7 +208,7 @@ describe GlobalPolicy do end end - context 'anonymous' do + context "anonymous" do let(:current_user) { nil } it { is_expected.not_to be_allowed(:read_instance_statistics) } diff --git a/spec/policies/group_policy_spec.rb b/spec/policies/group_policy_spec.rb index af6d6f084a9..cb49ed61efc 100644 --- a/spec/policies/group_policy_spec.rb +++ b/spec/policies/group_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe GroupPolicy do let(:guest) { create(:user) } @@ -12,7 +12,7 @@ describe GroupPolicy do let(:guest_permissions) do [:read_label, :read_group, :upload_file, :read_namespace, :read_group_activity, :read_group_issues, :read_group_boards, :read_group_labels, :read_group_milestones, - :read_group_merge_requests] + :read_group_merge_requests,] end let(:reporter_permissions) { [:admin_label] } @@ -26,7 +26,7 @@ describe GroupPolicy do :create_cluster, :update_cluster, :admin_cluster, - :add_cluster + :add_cluster, ] end @@ -37,7 +37,7 @@ describe GroupPolicy do :admin_group_member, :change_visibility_level, :set_note_created_at, - (Gitlab::Database.postgresql? ? :create_subgroup : nil) + (Gitlab::Database.postgresql? ? :create_subgroup : nil), ].compact end @@ -59,7 +59,7 @@ describe GroupPolicy do permissions.each { |p| is_expected.not_to be_allowed(p) } end - context 'with no user' do + context "with no user" do let(:group) { create(:group, :public) } let(:current_user) { nil } @@ -74,7 +74,7 @@ describe GroupPolicy do end end - context 'has projects' do + context "has projects" do let(:current_user) { create(:user) } let(:project) { create(:project, namespace: group) } @@ -86,7 +86,7 @@ describe GroupPolicy do expect_allowed(:read_group, :read_list, :read_label) end - context 'in subgroups', :nested_groups do + context "in subgroups", :nested_groups do let(:subgroup) { create(:group, :private, parent: group) } let(:project) { create(:project, namespace: subgroup) } @@ -96,7 +96,7 @@ describe GroupPolicy do end end - context 'guests' do + context "guests" do let(:current_user) { guest } it do @@ -108,7 +108,7 @@ describe GroupPolicy do end end - context 'reporter' do + context "reporter" do let(:current_user) { reporter } it do @@ -120,7 +120,7 @@ describe GroupPolicy do end end - context 'developer' do + context "developer" do let(:current_user) { developer } it do @@ -132,7 +132,7 @@ describe GroupPolicy do end end - context 'maintainer' do + context "maintainer" do let(:current_user) { maintainer } it do @@ -144,7 +144,7 @@ describe GroupPolicy do end end - context 'owner' do + context "owner" do let(:current_user) { owner } it do @@ -158,7 +158,7 @@ describe GroupPolicy do end end - context 'admin' do + context "admin" do let(:current_user) { admin } it do @@ -172,15 +172,15 @@ describe GroupPolicy do end end - describe 'when nested group support feature is disabled' do + describe "when nested group support feature is disabled" do before do allow(Group).to receive(:supports_nested_objects?).and_return(false) end - context 'admin' do + context "admin" do let(:current_user) { admin } - it 'allows every owner permission except creating subgroups' do + it "allows every owner permission except creating subgroups" do create_subgroup_permission = [:create_subgroup] updated_owner_permissions = owner_permissions - create_subgroup_permission @@ -189,10 +189,10 @@ describe GroupPolicy do end end - context 'owner' do + context "owner" do let(:current_user) { owner } - it 'allows every owner permission except creating subgroups' do + it "allows every owner permission except creating subgroups" do create_subgroup_permission = [:create_subgroup] updated_owner_permissions = owner_permissions - create_subgroup_permission @@ -202,7 +202,7 @@ describe GroupPolicy do end end - describe 'private nested group use the highest access level from the group and inherited permissions', :nested_groups do + describe "private nested group use the highest access level from the group and inherited permissions", :nested_groups do let(:nested_group) { create(:group, :private, parent: group) } before do @@ -219,7 +219,7 @@ describe GroupPolicy do subject { described_class.new(current_user, nested_group) } - context 'with no user' do + context "with no user" do let(:current_user) { nil } it do @@ -231,7 +231,7 @@ describe GroupPolicy do end end - context 'guests' do + context "guests" do let(:current_user) { guest } it do @@ -243,7 +243,7 @@ describe GroupPolicy do end end - context 'reporter' do + context "reporter" do let(:current_user) { reporter } it do @@ -255,7 +255,7 @@ describe GroupPolicy do end end - context 'developer' do + context "developer" do let(:current_user) { developer } it do @@ -267,7 +267,7 @@ describe GroupPolicy do end end - context 'maintainer' do + context "maintainer" do let(:current_user) { maintainer } it do @@ -279,7 +279,7 @@ describe GroupPolicy do end end - context 'owner' do + context "owner" do let(:current_user) { owner } it do @@ -294,26 +294,26 @@ describe GroupPolicy do end end - describe 'change_share_with_group_lock' do - context 'when the current_user owns the group' do + describe "change_share_with_group_lock" do + context "when the current_user owns the group" do let(:current_user) { owner } - context 'when the group share_with_group_lock is enabled' do + context "when the group share_with_group_lock is enabled" do let(:group) { create(:group, share_with_group_lock: true, parent: parent) } - context 'when the parent group share_with_group_lock is enabled' do - context 'when the group has a grandparent' do + context "when the parent group share_with_group_lock is enabled" do + context "when the group has a grandparent" do let(:parent) { create(:group, share_with_group_lock: true, parent: grandparent) } - context 'when the grandparent share_with_group_lock is enabled' do + context "when the grandparent share_with_group_lock is enabled" do let(:grandparent) { create(:group, share_with_group_lock: true) } - context 'when the current_user owns the parent' do + context "when the current_user owns the parent" do before do parent.add_owner(current_user) end - context 'when the current_user owns the grandparent' do + context "when the current_user owns the grandparent" do before do grandparent.add_owner(current_user) end @@ -321,20 +321,20 @@ describe GroupPolicy do it { expect_allowed(:change_share_with_group_lock) } end - context 'when the current_user does not own the grandparent' do + context "when the current_user does not own the grandparent" do it { expect_disallowed(:change_share_with_group_lock) } end end - context 'when the current_user does not own the parent' do + context "when the current_user does not own the parent" do it { expect_disallowed(:change_share_with_group_lock) } end end - context 'when the grandparent share_with_group_lock is disabled' do + context "when the grandparent share_with_group_lock is disabled" do let(:grandparent) { create(:group) } - context 'when the current_user owns the parent' do + context "when the current_user owns the parent" do before do parent.add_owner(current_user) end @@ -342,16 +342,16 @@ describe GroupPolicy do it { expect_allowed(:change_share_with_group_lock) } end - context 'when the current_user does not own the parent' do + context "when the current_user does not own the parent" do it { expect_disallowed(:change_share_with_group_lock) } end end end - context 'when the group does not have a grandparent' do + context "when the group does not have a grandparent" do let(:parent) { create(:group, share_with_group_lock: true) } - context 'when the current_user owns the parent' do + context "when the current_user owns the parent" do before do parent.add_owner(current_user) end @@ -359,38 +359,38 @@ describe GroupPolicy do it { expect_allowed(:change_share_with_group_lock) } end - context 'when the current_user does not own the parent' do + context "when the current_user does not own the parent" do it { expect_disallowed(:change_share_with_group_lock) } end end end - context 'when the parent group share_with_group_lock is disabled' do + context "when the parent group share_with_group_lock is disabled" do let(:parent) { create(:group) } it { expect_allowed(:change_share_with_group_lock) } end end - context 'when the group share_with_group_lock is disabled' do + context "when the group share_with_group_lock is disabled" do it { expect_allowed(:change_share_with_group_lock) } end end - context 'when the current_user does not own the group' do + context "when the current_user does not own the group" do let(:current_user) { create(:user) } it { expect_disallowed(:change_share_with_group_lock) } end end - it_behaves_like 'clusterable policies' do + it_behaves_like "clusterable policies" do let(:clusterable) { create(:group) } let(:cluster) do create(:cluster, - :provided_by_gcp, - :group, - groups: [clusterable]) + :provided_by_gcp, + :group, + groups: [clusterable]) end end end diff --git a/spec/policies/issuable_policy_spec.rb b/spec/policies/issuable_policy_spec.rb index db3df760472..fbd3b6e40aa 100644 --- a/spec/policies/issuable_policy_spec.rb +++ b/spec/policies/issuable_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe IssuablePolicy, models: true do let(:user) { create(:user) } @@ -6,49 +6,49 @@ describe IssuablePolicy, models: true do let(:issue) { create(:issue, project: project) } let(:policies) { described_class.new(user, issue) } - describe '#rules' do - context 'when user is author of issuable' do + describe "#rules" do + context "when user is author of issuable" do let(:merge_request) { create(:merge_request, source_project: project, author: user) } let(:policies) { described_class.new(user, merge_request) } - context 'when user is able to read project' do - it 'enables user to read and update issuables' do + context "when user is able to read project" do + it "enables user to read and update issuables" do expect(policies).to be_allowed(:read_issue, :update_issue, :reopen_issue, :read_merge_request, :update_merge_request) end end - context 'when project is private' do + context "when project is private" do let(:project) { create(:project, :private) } - context 'when user belongs to the projects team' do - it 'enables user to read and update issuables' do + context "when user belongs to the projects team" do + it "enables user to read and update issuables" do project.add_maintainer(user) expect(policies).to be_allowed(:read_issue, :update_issue, :reopen_issue, :read_merge_request, :update_merge_request) end end - it 'disallows user from reading and updating issuables from that project' do + it "disallows user from reading and updating issuables from that project" do expect(policies).to be_disallowed(:read_issue, :update_issue, :reopen_issue, :read_merge_request, :update_merge_request) end end end - context 'when discussion is locked for the issuable' do + context "when discussion is locked for the issuable" do let(:issue) { create(:issue, project: project, discussion_locked: true) } - context 'when the user is not a project member' do - it 'can not create a note' do + context "when the user is not a project member" do + it "can not create a note" do expect(policies).to be_disallowed(:create_note) end end - context 'when the user is a project member' do + context "when the user is a project member" do before do project.add_guest(user) end - it 'can create a note' do + it "can create a note" do expect(policies).to be_allowed(:create_note) end end diff --git a/spec/policies/issue_policy_spec.rb b/spec/policies/issue_policy_spec.rb index 008d118b557..54a4959c6c2 100644 --- a/spec/policies/issue_policy_spec.rb +++ b/spec/policies/issue_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe IssuePolicy do let(:guest) { create(:user) } @@ -12,7 +12,7 @@ describe IssuePolicy do described_class.new(user, issue) end - context 'a private project' do + context "a private project" do let(:non_member) { create(:user) } let(:project) { create(:project, :private) } let(:issue) { create(:issue, project: project, assignees: [assignee], author: author) } @@ -29,12 +29,12 @@ describe IssuePolicy do create(:project_group_link, group: group, project: project) end - it 'does not allow non-members to read issues' do + it "does not allow non-members to read issues" do expect(permissions(non_member, issue)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(non_member, issue_no_assignee)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows guests to read issues' do + it "allows guests to read issues" do expect(permissions(guest, issue)).to be_allowed(:read_issue, :read_issue_iid) expect(permissions(guest, issue)).to be_disallowed(:update_issue, :admin_issue) @@ -42,17 +42,17 @@ describe IssuePolicy do expect(permissions(guest, issue_no_assignee)).to be_disallowed(:update_issue, :admin_issue) end - it 'allows reporters to read, update, and admin issues' do + it "allows reporters to read, update, and admin issues" do expect(permissions(reporter, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter, issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows reporters from group links to read, update, and admin issues' do + it "allows reporters from group links to read, update, and admin issues" do expect(permissions(reporter_from_group_link, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter_from_group_link, issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows issue authors to read and update their issues' do + it "allows issue authors to read and update their issues" do expect(permissions(author, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue) expect(permissions(author, issue)).to be_disallowed(:admin_issue) @@ -60,7 +60,7 @@ describe IssuePolicy do expect(permissions(author, issue_no_assignee)).to be_disallowed(:update_issue, :admin_issue) end - it 'allows issue assignees to read and update their issues' do + it "allows issue assignees to read and update their issues" do expect(permissions(assignee, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue) expect(permissions(assignee, issue)).to be_disallowed(:admin_issue) @@ -68,38 +68,38 @@ describe IssuePolicy do expect(permissions(assignee, issue_no_assignee)).to be_disallowed(:update_issue, :admin_issue) end - context 'with confidential issues' do + context "with confidential issues" do let(:confidential_issue) { create(:issue, :confidential, project: project, assignees: [assignee], author: author) } let(:confidential_issue_no_assignee) { create(:issue, :confidential, project: project) } - it 'does not allow non-members to read confidential issues' do + it "does not allow non-members to read confidential issues" do expect(permissions(non_member, confidential_issue)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(non_member, confidential_issue_no_assignee)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'does not allow guests to read confidential issues' do + it "does not allow guests to read confidential issues" do expect(permissions(guest, confidential_issue)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(guest, confidential_issue_no_assignee)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows reporters to read, update, and admin confidential issues' do + it "allows reporters to read, update, and admin confidential issues" do expect(permissions(reporter, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter, confidential_issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows reporters from group links to read, update, and admin confidential issues' do + it "allows reporters from group links to read, update, and admin confidential issues" do expect(permissions(reporter_from_group_link, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter_from_group_link, confidential_issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows issue authors to read and update their confidential issues' do + it "allows issue authors to read and update their confidential issues" do expect(permissions(author, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue) expect(permissions(author, confidential_issue)).to be_disallowed(:admin_issue) expect(permissions(author, confidential_issue_no_assignee)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows issue assignees to read and update their confidential issues' do + it "allows issue assignees to read and update their confidential issues" do expect(permissions(assignee, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue) expect(permissions(assignee, confidential_issue)).to be_disallowed(:admin_issue) @@ -108,7 +108,7 @@ describe IssuePolicy do end end - context 'a public project' do + context "a public project" do let(:project) { create(:project, :public) } let(:issue) { create(:issue, project: project, assignees: [assignee], author: author) } let(:issue_no_assignee) { create(:issue, project: project) } @@ -123,7 +123,7 @@ describe IssuePolicy do create(:project_group_link, group: group, project: project) end - it 'allows guests to read issues' do + it "allows guests to read issues" do expect(permissions(guest, issue)).to be_allowed(:read_issue, :read_issue_iid) expect(permissions(guest, issue)).to be_disallowed(:update_issue, :admin_issue, :reopen_issue) @@ -134,21 +134,21 @@ describe IssuePolicy do expect(permissions(guest, issue_locked)).to be_disallowed(:update_issue, :admin_issue, :reopen_issue) end - it 'allows reporters to read, update, reopen, and admin issues' do + it "allows reporters to read, update, reopen, and admin issues" do expect(permissions(reporter, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue, :reopen_issue) expect(permissions(reporter, issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue, :reopen_issue) expect(permissions(reporter, issue_locked)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter, issue_locked)).to be_disallowed(:reopen_issue) end - it 'allows reporters from group links to read, update, reopen and admin issues' do + it "allows reporters from group links to read, update, reopen and admin issues" do expect(permissions(reporter_from_group_link, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue, :reopen_issue) expect(permissions(reporter_from_group_link, issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue, :reopen_issue) expect(permissions(reporter_from_group_link, issue_locked)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter_from_group_link, issue_locked)).to be_disallowed(:reopen_issue) end - it 'allows issue authors to read, reopen and update their issues' do + it "allows issue authors to read, reopen and update their issues" do expect(permissions(author, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :reopen_issue) expect(permissions(author, issue)).to be_disallowed(:admin_issue) @@ -159,7 +159,7 @@ describe IssuePolicy do expect(permissions(author, issue_locked)).to be_disallowed(:admin_issue, :reopen_issue) end - it 'allows issue assignees to read, reopen and update their issues' do + it "allows issue assignees to read, reopen and update their issues" do expect(permissions(assignee, issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :reopen_issue) expect(permissions(assignee, issue)).to be_disallowed(:admin_issue) @@ -170,33 +170,33 @@ describe IssuePolicy do expect(permissions(assignee, issue_locked)).to be_disallowed(:admin_issue, :reopen_issue) end - context 'with confidential issues' do + context "with confidential issues" do let(:confidential_issue) { create(:issue, :confidential, project: project, assignees: [assignee], author: author) } let(:confidential_issue_no_assignee) { create(:issue, :confidential, project: project) } - it 'does not allow guests to read confidential issues' do + it "does not allow guests to read confidential issues" do expect(permissions(guest, confidential_issue)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(guest, confidential_issue_no_assignee)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows reporters to read, update, and admin confidential issues' do + it "allows reporters to read, update, and admin confidential issues" do expect(permissions(reporter, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter, confidential_issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows reporter from group links to read, update, and admin confidential issues' do + it "allows reporter from group links to read, update, and admin confidential issues" do expect(permissions(reporter_from_group_link, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) expect(permissions(reporter_from_group_link, confidential_issue_no_assignee)).to be_allowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows issue authors to read and update their confidential issues' do + it "allows issue authors to read and update their confidential issues" do expect(permissions(author, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue) expect(permissions(author, confidential_issue)).to be_disallowed(:admin_issue) expect(permissions(author, confidential_issue_no_assignee)).to be_disallowed(:read_issue, :read_issue_iid, :update_issue, :admin_issue) end - it 'allows issue assignees to read and update their confidential issues' do + it "allows issue assignees to read and update their confidential issues" do expect(permissions(assignee, confidential_issue)).to be_allowed(:read_issue, :read_issue_iid, :update_issue) expect(permissions(assignee, confidential_issue)).to be_disallowed(:admin_issue) diff --git a/spec/policies/namespace_policy_spec.rb b/spec/policies/namespace_policy_spec.rb index 1fdf95ad716..23e75d91fe7 100644 --- a/spec/policies/namespace_policy_spec.rb +++ b/spec/policies/namespace_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe NamespacePolicy do let(:user) { create(:user) } @@ -10,31 +10,31 @@ describe NamespacePolicy do subject { described_class.new(current_user, namespace) } - context 'with no user' do + context "with no user" do let(:current_user) { nil } it { is_expected.to be_banned } end - context 'regular user' do + context "regular user" do let(:current_user) { user } it { is_expected.to be_disallowed(*owner_permissions) } end - context 'owner' do + context "owner" do let(:current_user) { owner } it { is_expected.to be_allowed(*owner_permissions) } - context 'user who has exceeded project limit' do + context "user who has exceeded project limit" do let(:owner) { create(:user, projects_limit: 0) } it { is_expected.not_to be_allowed(:create_projects) } end end - context 'admin' do + context "admin" do let(:current_user) { admin } it { is_expected.to be_allowed(*owner_permissions) } diff --git a/spec/policies/note_policy_spec.rb b/spec/policies/note_policy_spec.rb index 0e848c74659..ed9d88d3b9d 100644 --- a/spec/policies/note_policy_spec.rb +++ b/spec/policies/note_policy_spec.rb @@ -1,7 +1,7 @@ -require 'spec_helper' +require "spec_helper" describe NotePolicy, mdoels: true do - describe '#rules' do + describe "#rules" do let(:user) { create(:user) } let(:project) { create(:project, :public) } let(:issue) { create(:issue, project: project) } @@ -11,20 +11,20 @@ describe NotePolicy, mdoels: true do noteable ||= issue note = if noteable.is_a?(Commit) - create(:note_on_commit, commit_id: noteable.id, author: user, project: project) - else - create(:note, noteable: noteable, author: user, project: project) - end + create(:note_on_commit, commit_id: noteable.id, author: user, project: project) + else + create(:note, noteable: noteable, author: user, project: project) + end @policies = described_class.new(user, note) end - shared_examples_for 'a discussion with a private noteable' do + shared_examples_for "a discussion with a private noteable" do let(:noteable) { issue } let(:policy) { policies(noteable) } - context 'when the note author can no longer see the noteable' do - it 'can not edit nor read the note' do + context "when the note author can no longer see the noteable" do + it "can not edit nor read the note" do expect(policy).to be_disallowed(:admin_note) expect(policy).to be_disallowed(:resolve_note) expect(policy).to be_disallowed(:read_note) @@ -32,12 +32,12 @@ describe NotePolicy, mdoels: true do end end - context 'when the note author can still see the noteable' do + context "when the note author can still see the noteable" do before do project.add_developer(user) end - it 'can edit the note' do + it "can edit the note" do expect(policy).to be_allowed(:admin_note) expect(policy).to be_allowed(:resolve_note) expect(policy).to be_allowed(:read_note) @@ -46,27 +46,27 @@ describe NotePolicy, mdoels: true do end end - context 'when the project is private' do + context "when the project is private" do let(:project) { create(:project, :private, :repository) } - context 'when the noteable is a commit' do - it_behaves_like 'a discussion with a private noteable' do + context "when the noteable is a commit" do + it_behaves_like "a discussion with a private noteable" do let(:noteable) { project.repository.head_commit } end end end - context 'when the project is public' do - context 'when the note author is not a project member' do - it 'can edit a note' do + context "when the project is public" do + context "when the note author is not a project member" do + it "can edit a note" do expect(policies).to be_allowed(:admin_note) expect(policies).to be_allowed(:resolve_note) expect(policies).to be_allowed(:read_note) end end - context 'when the noteable is a project snippet' do - it 'can edit note' do + context "when the noteable is a project snippet" do + it "can edit note" do policies = policies(create(:project_snippet, :public, project: project)) expect(policies).to be_allowed(:admin_note) @@ -74,15 +74,15 @@ describe NotePolicy, mdoels: true do expect(policies).to be_allowed(:read_note) end - context 'when it is private' do - it_behaves_like 'a discussion with a private noteable' do + context "when it is private" do + it_behaves_like "a discussion with a private noteable" do let(:noteable) { create(:project_snippet, :private, project: project) } end end end - context 'when the noteable is a personal snippet' do - it 'can edit note' do + context "when the noteable is a personal snippet" do + it "can edit note" do policies = policies(create(:personal_snippet, :public)) expect(policies).to be_allowed(:admin_note) @@ -90,8 +90,8 @@ describe NotePolicy, mdoels: true do expect(policies).to be_allowed(:read_note) end - context 'when it is private' do - it 'can not edit nor read the note' do + context "when it is private" do + it "can not edit nor read the note" do policies = policies(create(:personal_snippet, :private)) expect(policies).to be_disallowed(:admin_note) @@ -101,38 +101,38 @@ describe NotePolicy, mdoels: true do end end - context 'when a discussion is confidential' do + context "when a discussion is confidential" do before do issue.update_attribute(:confidential, true) end - it_behaves_like 'a discussion with a private noteable' + it_behaves_like "a discussion with a private noteable" end - context 'when a discussion is locked' do + context "when a discussion is locked" do before do issue.update_attribute(:discussion_locked, true) end - context 'when the note author is a project member' do + context "when the note author is a project member" do before do project.add_developer(user) end - it 'can edit a note' do + it "can edit a note" do expect(policies).to be_allowed(:admin_note) expect(policies).to be_allowed(:resolve_note) expect(policies).to be_allowed(:read_note) end end - context 'when the note author is not a project member' do - it 'can not edit a note' do + context "when the note author is not a project member" do + it "can not edit a note" do expect(policies).to be_disallowed(:admin_note) expect(policies).to be_disallowed(:resolve_note) end - it 'can read a note' do + it "can read a note" do expect(policies).to be_allowed(:read_note) end end diff --git a/spec/policies/personal_snippet_policy_spec.rb b/spec/policies/personal_snippet_policy_spec.rb index a38e0dbd797..1e71d4b94ea 100644 --- a/spec/policies/personal_snippet_policy_spec.rb +++ b/spec/policies/personal_snippet_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" # Snippet visibility scenarios are included in more details in spec/support/snippet_visibility.rb describe PersonalSnippetPolicy do @@ -10,14 +10,14 @@ describe PersonalSnippetPolicy do [ :update_personal_snippet, :admin_personal_snippet, - :destroy_personal_snippet + :destroy_personal_snippet, ] end let(:comment_permissions) do [ :comment_personal_snippet, - :create_note + :create_note, ] end @@ -25,10 +25,10 @@ describe PersonalSnippetPolicy do described_class.new(user, snippet) end - context 'public snippet' do + context "public snippet" do let(:snippet) { create(:personal_snippet, :public) } - context 'no user' do + context "no user" do subject { permissions(nil) } it do @@ -39,7 +39,7 @@ describe PersonalSnippetPolicy do end end - context 'regular user' do + context "regular user" do subject { permissions(regular_user) } it do @@ -50,7 +50,7 @@ describe PersonalSnippetPolicy do end end - context 'author' do + context "author" do subject { permissions(snippet.author) } it do @@ -62,10 +62,10 @@ describe PersonalSnippetPolicy do end end - context 'internal snippet' do + context "internal snippet" do let(:snippet) { create(:personal_snippet, :internal) } - context 'no user' do + context "no user" do subject { permissions(nil) } it do @@ -76,7 +76,7 @@ describe PersonalSnippetPolicy do end end - context 'regular user' do + context "regular user" do subject { permissions(regular_user) } it do @@ -87,7 +87,7 @@ describe PersonalSnippetPolicy do end end - context 'external user' do + context "external user" do subject { permissions(external_user) } it do @@ -98,7 +98,7 @@ describe PersonalSnippetPolicy do end end - context 'snippet author' do + context "snippet author" do subject { permissions(snippet.author) } it do @@ -110,10 +110,10 @@ describe PersonalSnippetPolicy do end end - context 'private snippet' do + context "private snippet" do let(:snippet) { create(:project_snippet, :private) } - context 'no user' do + context "no user" do subject { permissions(nil) } it do @@ -124,7 +124,7 @@ describe PersonalSnippetPolicy do end end - context 'regular user' do + context "regular user" do subject { permissions(regular_user) } it do @@ -135,7 +135,7 @@ describe PersonalSnippetPolicy do end end - context 'admin user' do + context "admin user" do subject { permissions(admin_user) } it do @@ -146,7 +146,7 @@ describe PersonalSnippetPolicy do end end - context 'external user' do + context "external user" do subject { permissions(external_user) } it do @@ -157,7 +157,7 @@ describe PersonalSnippetPolicy do end end - context 'snippet author' do + context "snippet author" do subject { permissions(snippet.author) } it do diff --git a/spec/policies/project_policy_spec.rb b/spec/policies/project_policy_spec.rb index 997bdc82af6..e56eb6a2cb5 100644 --- a/spec/policies/project_policy_spec.rb +++ b/spec/policies/project_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe ProjectPolicy do set(:guest) { create(:user) } @@ -93,7 +93,7 @@ describe ProjectPolicy do permissions.each { |p| is_expected.not_to be_allowed(p) } end - it 'does not include the read_issue permission when the issue author is not a member of the private project' do + it "does not include the read_issue permission when the issue author is not a member of the private project" do project = create(:project, :private) issue = create(:issue, project: project, author: create(:user)) user = issue.author @@ -103,22 +103,22 @@ describe ProjectPolicy do expect(Ability).not_to be_allowed(user, :read_issue, project) end - context 'wiki feature' do - let(:permissions) { %i(read_wiki create_wiki update_wiki admin_wiki download_wiki_code) } + context "wiki feature" do + let(:permissions) { %i[read_wiki create_wiki update_wiki admin_wiki download_wiki_code] } subject { described_class.new(owner, project) } - context 'when the feature is disabled' do + context "when the feature is disabled" do before do project.project_feature.update_attribute(:wiki_access_level, ProjectFeature::DISABLED) end - it 'does not include the wiki permissions' do + it "does not include the wiki permissions" do expect_disallowed(*permissions) end - context 'when there is an external wiki' do - it 'does not include the wiki permissions' do + context "when there is an external wiki" do + it "does not include the wiki permissions" do allow(project).to receive(:has_external_wiki?).and_return(true) expect_disallowed(*permissions) @@ -127,11 +127,11 @@ describe ProjectPolicy do end end - context 'issues feature' do + context "issues feature" do subject { described_class.new(owner, project) } - context 'when the feature is disabled' do - it 'does not include the issues permissions' do + context "when the feature is disabled" do + it "does not include the issues permissions" do project.issues_enabled = false project.save! @@ -139,8 +139,8 @@ describe ProjectPolicy do end end - context 'when the feature is disabled and external tracker configured' do - it 'does not include the issues permissions' do + context "when the feature is disabled and external tracker configured" do + it "does not include the issues permissions" do create(:jira_service, project: project) project.issues_enabled = false @@ -151,62 +151,62 @@ describe ProjectPolicy do end end - context 'merge requests feature' do + context "merge requests feature" do subject { described_class.new(owner, project) } - it 'disallows all permissions when the feature is disabled' do + it "disallows all permissions when the feature is disabled" do project.project_feature.update(merge_requests_access_level: ProjectFeature::DISABLED) mr_permissions = [:create_merge_request_from, :read_merge_request, :update_merge_request, :admin_merge_request, - :create_merge_request_in] + :create_merge_request_in,] expect_disallowed(*mr_permissions) end end - context 'for a guest in a private project' do + context "for a guest in a private project" do let(:project) { create(:project, :private) } subject { described_class.new(guest, project) } - it 'disallows the guest from reading the merge request and merge request iid' do + it "disallows the guest from reading the merge request and merge request iid" do expect_disallowed(:read_merge_request) expect_disallowed(:read_merge_request_iid) end end - context 'builds feature' do - context 'when builds are disabled' do + context "builds feature" do + context "when builds are disabled" do subject { described_class.new(owner, project) } before do project.project_feature.update(builds_access_level: ProjectFeature::DISABLED) end - it 'disallows all permissions except pipeline when the feature is disabled' do + it "disallows all permissions except pipeline when the feature is disabled" do builds_permissions = [ :create_build, :read_build, :update_build, :admin_build, :destroy_build, :create_pipeline_schedule, :read_pipeline_schedule, :update_pipeline_schedule, :admin_pipeline_schedule, :destroy_pipeline_schedule, :create_environment, :read_environment, :update_environment, :admin_environment, :destroy_environment, :create_cluster, :read_cluster, :update_cluster, :admin_cluster, :destroy_cluster, - :create_deployment, :read_deployment, :update_deployment, :admin_deployment, :destroy_deployment + :create_deployment, :read_deployment, :update_deployment, :admin_deployment, :destroy_deployment, ] expect_disallowed(*builds_permissions) end end - context 'when builds are disabled only for some users' do + context "when builds are disabled only for some users" do subject { described_class.new(guest, project) } before do project.project_feature.update(builds_access_level: ProjectFeature::PRIVATE) end - it 'disallows pipeline and commit_status permissions' do + it "disallows pipeline and commit_status permissions" do builds_permissions = [ :create_pipeline, :update_pipeline, :admin_pipeline, :destroy_pipeline, - :create_commit_status, :update_commit_status, :admin_commit_status, :destroy_commit_status + :create_commit_status, :update_commit_status, :admin_commit_status, :destroy_commit_status, ] expect_disallowed(*builds_permissions) @@ -214,10 +214,10 @@ describe ProjectPolicy do end end - context 'repository feature' do + context "repository feature" do subject { described_class.new(owner, project) } - it 'disallows all permissions when the feature is disabled' do + it "disallows all permissions when the feature is disabled" do project.project_feature.update(repository_access_level: ProjectFeature::DISABLED) repository_permissions = [ @@ -227,14 +227,14 @@ describe ProjectPolicy do :create_environment, :read_environment, :update_environment, :admin_environment, :destroy_environment, :create_cluster, :read_cluster, :update_cluster, :admin_cluster, :create_deployment, :read_deployment, :update_deployment, :admin_deployment, :destroy_deployment, - :destroy_release + :destroy_release, ] expect_disallowed(*repository_permissions) end end - shared_examples 'archived project policies' do + shared_examples "archived project policies" do let(:feature_write_abilities) do described_class::READONLY_FEATURES_WHEN_ARCHIVED.flat_map do |feature| described_class.create_update_admin_destroy(feature) @@ -254,28 +254,28 @@ describe ProjectPolicy do ] end - context 'when the project is archived' do + context "when the project is archived" do before do project.archived = true end - it 'disables write actions on all relevant project features' do + it "disables write actions on all relevant project features" do expect_disallowed(*feature_write_abilities) end - it 'disables some other important write actions' do + it "disables some other important write actions" do expect_disallowed(*other_write_abilities) end - it 'does not disable other abilities' do + it "does not disable other abilities" do expect_allowed(*(regular_abilities - feature_write_abilities - other_write_abilities)) end end end - shared_examples 'project policies as anonymous' do - context 'abilities for public projects' do - context 'when a project has pending invites' do + shared_examples "project policies as anonymous" do + context "abilities for public projects" do + context "when a project has pending invites" do let(:group) { create(:group, :public) } let(:project) { create(:project, :public, namespace: group) } let(:user_permissions) { [:create_merge_request_in, :create_project, :create_issue, :create_note, :upload_file, :award_emoji] } @@ -287,18 +287,18 @@ describe ProjectPolicy do create(:group_member, :invited, group: group) end - it 'does not grant owner access' do + it "does not grant owner access" do expect_allowed(*anonymous_permissions) expect_disallowed(*user_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { anonymous_permissions } end end end - context 'abilities for non-public projects' do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } subject { described_class.new(nil, project) } @@ -307,10 +307,10 @@ describe ProjectPolicy do end end - shared_examples 'project policies as guest' do + shared_examples "project policies as guest" do subject { described_class.new(guest, project) } - context 'abilities for non-public projects' do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } let(:reporter_public_build_permissions) do reporter_permissions - [:read_build, :read_pipeline] @@ -325,18 +325,18 @@ describe ProjectPolicy do expect_disallowed(*owner_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { guest_permissions } end - context 'public builds enabled' do + context "public builds enabled" do it do expect_allowed(*guest_permissions) expect_allowed(:read_build, :read_pipeline) end end - context 'when public builds disabled' do + context "when public builds disabled" do before do project.update(public_builds: false) end @@ -347,7 +347,7 @@ describe ProjectPolicy do end end - context 'when builds are disabled' do + context "when builds are disabled" do before do project.project_feature.update(builds_access_level: ProjectFeature::DISABLED) end @@ -360,8 +360,8 @@ describe ProjectPolicy do end end - shared_examples 'project policies as reporter' do - context 'abilities for non-public projects' do + shared_examples "project policies as reporter" do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } subject { described_class.new(reporter, project) } @@ -375,14 +375,14 @@ describe ProjectPolicy do expect_disallowed(*owner_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { reporter_permissions } end end end - shared_examples 'project policies as developer' do - context 'abilities for non-public projects' do + shared_examples "project policies as developer" do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } subject { described_class.new(developer, project) } @@ -396,14 +396,14 @@ describe ProjectPolicy do expect_disallowed(*owner_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { developer_permissions } end end end - shared_examples 'project policies as maintainer' do - context 'abilities for non-public projects' do + shared_examples "project policies as maintainer" do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } subject { described_class.new(maintainer, project) } @@ -417,14 +417,14 @@ describe ProjectPolicy do expect_disallowed(*owner_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { maintainer_permissions } end end end - shared_examples 'project policies as owner' do - context 'abilities for non-public projects' do + shared_examples "project policies as owner" do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } subject { described_class.new(owner, project) } @@ -438,14 +438,14 @@ describe ProjectPolicy do expect_allowed(*owner_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { owner_permissions } end end end - shared_examples 'project policies as admin' do - context 'abilities for non-public projects' do + shared_examples "project policies as admin" do + context "abilities for non-public projects" do let(:project) { create(:project, namespace: owner.namespace) } subject { described_class.new(admin, project) } @@ -459,21 +459,21 @@ describe ProjectPolicy do expect_allowed(*owner_permissions) end - it_behaves_like 'archived project policies' do + it_behaves_like "archived project policies" do let(:regular_abilities) { owner_permissions } end end end - it_behaves_like 'project policies as anonymous' - it_behaves_like 'project policies as guest' - it_behaves_like 'project policies as reporter' - it_behaves_like 'project policies as developer' - it_behaves_like 'project policies as maintainer' - it_behaves_like 'project policies as owner' - it_behaves_like 'project policies as admin' + it_behaves_like "project policies as anonymous" + it_behaves_like "project policies as guest" + it_behaves_like "project policies as reporter" + it_behaves_like "project policies as developer" + it_behaves_like "project policies as maintainer" + it_behaves_like "project policies as owner" + it_behaves_like "project policies as admin" - context 'when a public project has merge requests allowing access' do + context "when a public project has merge requests allowing access" do include ProjectForksHelper let(:user) { create(:user) } let(:target_project) { create(:project, :public) } @@ -487,22 +487,22 @@ describe ProjectPolicy do ) end let(:maintainer_abilities) do - %w(create_build create_pipeline) + %w[create_build create_pipeline] end subject { described_class.new(user, project) } - it 'does not allow pushing code' do + it "does not allow pushing code" do expect_disallowed(*maintainer_abilities) end - it 'allows pushing if the user is a member with push access to the target project' do + it "allows pushing if the user is a member with push access to the target project" do target_project.add_developer(user) expect_allowed(*maintainer_abilities) end - it 'dissallows abilities to a maintainer if the merge request was closed' do + it "dissallows abilities to a maintainer if the merge request was closed" do target_project.add_developer(user) merge_request.close! @@ -510,13 +510,13 @@ describe ProjectPolicy do end end - it_behaves_like 'clusterable policies' do + it_behaves_like "clusterable policies" do let(:clusterable) { create(:project, :repository) } let(:cluster) do create(:cluster, - :provided_by_gcp, - :project, - projects: [clusterable]) + :provided_by_gcp, + :project, + projects: [clusterable]) end end end diff --git a/spec/policies/project_snippet_policy_spec.rb b/spec/policies/project_snippet_policy_spec.rb index d6329e84579..d0e32ea6f75 100644 --- a/spec/policies/project_snippet_policy_spec.rb +++ b/spec/policies/project_snippet_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" # Snippet visibility scenarios are included in more details in spec/support/snippet_visibility.rb describe ProjectSnippetPolicy do @@ -9,7 +9,7 @@ describe ProjectSnippetPolicy do let(:author_permissions) do [ :update_project_snippet, - :admin_project_snippet + :admin_project_snippet, ] end @@ -27,8 +27,8 @@ describe ProjectSnippetPolicy do permissions.each { |p| is_expected.not_to be_allowed(p) } end - context 'public snippet' do - context 'no user' do + context "public snippet" do + context "no user" do subject { abilities(nil, :public) } it do @@ -37,7 +37,7 @@ describe ProjectSnippetPolicy do end end - context 'regular user' do + context "regular user" do subject { abilities(regular_user, :public) } it do @@ -46,7 +46,7 @@ describe ProjectSnippetPolicy do end end - context 'external user' do + context "external user" do subject { abilities(external_user, :public) } it do @@ -56,8 +56,8 @@ describe ProjectSnippetPolicy do end end - context 'internal snippet' do - context 'no user' do + context "internal snippet" do + context "no user" do subject { abilities(nil, :internal) } it do @@ -66,7 +66,7 @@ describe ProjectSnippetPolicy do end end - context 'regular user' do + context "regular user" do subject { abilities(regular_user, :internal) } it do @@ -75,7 +75,7 @@ describe ProjectSnippetPolicy do end end - context 'external user' do + context "external user" do subject { abilities(external_user, :internal) } it do @@ -84,7 +84,7 @@ describe ProjectSnippetPolicy do end end - context 'project team member external user' do + context "project team member external user" do subject { abilities(external_user, :internal) } before do @@ -98,8 +98,8 @@ describe ProjectSnippetPolicy do end end - context 'private snippet' do - context 'no user' do + context "private snippet" do + context "no user" do subject { abilities(nil, :private) } it do @@ -108,7 +108,7 @@ describe ProjectSnippetPolicy do end end - context 'regular user' do + context "regular user" do subject { abilities(regular_user, :private) } it do @@ -117,7 +117,7 @@ describe ProjectSnippetPolicy do end end - context 'snippet author' do + context "snippet author" do let(:snippet) { create(:project_snippet, :private, author: regular_user, project: project) } subject { described_class.new(regular_user, snippet) } @@ -128,7 +128,7 @@ describe ProjectSnippetPolicy do end end - context 'project team member normal user' do + context "project team member normal user" do subject { abilities(regular_user, :private) } before do @@ -141,7 +141,7 @@ describe ProjectSnippetPolicy do end end - context 'project team member external user' do + context "project team member external user" do subject { abilities(external_user, :private) } before do @@ -154,7 +154,7 @@ describe ProjectSnippetPolicy do end end - context 'admin user' do + context "admin user" do subject { abilities(create(:admin), :private) } it do diff --git a/spec/policies/protected_branch_policy_spec.rb b/spec/policies/protected_branch_policy_spec.rb index 1587196754d..ae62c4e5fae 100644 --- a/spec/policies/protected_branch_policy_spec.rb +++ b/spec/policies/protected_branch_policy_spec.rb @@ -1,14 +1,14 @@ -require 'spec_helper' +require "spec_helper" describe ProtectedBranchPolicy do let(:user) { create(:user) } - let(:name) { 'feature' } + let(:name) { "feature" } let(:protected_branch) { create(:protected_branch, name: name) } let(:project) { protected_branch.project } subject { described_class.new(user, protected_branch) } - it 'branches can be updated via project maintainers' do + it "branches can be updated via project maintainers" do project.add_maintainer(user) is_expected.to be_allowed(:update_protected_branch) diff --git a/spec/policies/user_policy_spec.rb b/spec/policies/user_policy_spec.rb index 7e0a1824200..b85f4e35f86 100644 --- a/spec/policies/user_policy_spec.rb +++ b/spec/policies/user_policy_spec.rb @@ -1,4 +1,4 @@ -require 'spec_helper' +require "spec_helper" describe UserPolicy do let(:current_user) { create(:user) } @@ -10,7 +10,7 @@ describe UserPolicy do it { is_expected.to be_allowed(:read_user) } end - shared_examples 'changing a user' do |ability| + shared_examples "changing a user" do |ability| context "when a regular user tries to destroy another regular user" do it { is_expected.not_to be_allowed(ability) } end @@ -36,14 +36,14 @@ describe UserPolicy do end describe "updating a user's status" do - it_behaves_like 'changing a user', :update_user_status + it_behaves_like "changing a user", :update_user_status end describe "destroying a user" do - it_behaves_like 'changing a user', :destroy_user + it_behaves_like "changing a user", :destroy_user end describe "updating a user" do - it_behaves_like 'changing a user', :update_user + it_behaves_like "changing a user", :update_user end end |