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:
authorJames Fargher <proglottis@gmail.com>2019-05-02 04:07:38 +0300
committerJames Fargher <proglottis@gmail.com>2019-05-06 23:37:04 +0300
commitbeb66cfcba26d0796644ccce2dfac8c65a808144 (patch)
tree6bb32fccb64f91776e946d84c5717d1ae52a9d7e /spec/policies
parent8db382b05545fdef0a60bcff65f8c23e8b1ed282 (diff)
Check instance cluster feature at policy level
Try to simplify feature flag checks by using policies
Diffstat (limited to 'spec/policies')
-rw-r--r--spec/policies/clusters/instance_policy_spec.rb21
1 files changed, 16 insertions, 5 deletions
diff --git a/spec/policies/clusters/instance_policy_spec.rb b/spec/policies/clusters/instance_policy_spec.rb
index f4652c2ad00..9d755c6d29d 100644
--- a/spec/policies/clusters/instance_policy_spec.rb
+++ b/spec/policies/clusters/instance_policy_spec.rb
@@ -3,9 +3,8 @@
require 'spec_helper'
describe Clusters::InstancePolicy do
- let(:cluster) { create(:cluster, :instance) }
let(:user) { create(:user) }
- let(:policy) { described_class.new(user, cluster) }
+ let(:policy) { described_class.new(user, Clusters::Instance.new) }
describe 'rules' do
context 'when user' do
@@ -17,9 +16,21 @@ describe Clusters::InstancePolicy do
context 'when admin' do
let(:user) { create(:admin) }
- it { expect(policy).to be_allowed :read_cluster }
- it { expect(policy).to be_allowed :update_cluster }
- it { expect(policy).to be_allowed :admin_cluster }
+ context 'with instance_level_clusters enabled' do
+ it { expect(policy).to be_allowed :read_cluster }
+ it { expect(policy).to be_allowed :update_cluster }
+ it { expect(policy).to be_allowed :admin_cluster }
+ end
+
+ context 'with instance_level_clusters disabled' do
+ before do
+ stub_feature_flags(instance_clusters: false)
+ end
+
+ it { expect(policy).to be_disallowed :read_cluster }
+ it { expect(policy).to be_disallowed :update_cluster }
+ it { expect(policy).to be_disallowed :admin_cluster }
+ end
end
end
end