From 23d237110e6a646dec08e1f5b4696d2d9c51cfef Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 26 Nov 2019 09:08:36 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- .../projects/clusters_controller_spec.rb | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'spec/controllers/projects/clusters_controller_spec.rb') diff --git a/spec/controllers/projects/clusters_controller_spec.rb b/spec/controllers/projects/clusters_controller_spec.rb index 5a0512a042e..9c21b472c15 100644 --- a/spec/controllers/projects/clusters_controller_spec.rb +++ b/spec/controllers/projects/clusters_controller_spec.rb @@ -517,6 +517,38 @@ describe Projects::ClustersController do end end + describe 'DELETE clear cluster cache' do + let(:cluster) { create(:cluster, :project, projects: [project]) } + let!(:kubernetes_namespace) { create(:cluster_kubernetes_namespace, cluster: cluster) } + + def go + delete :clear_cache, + params: { + namespace_id: project.namespace, + project_id: project, + id: cluster + } + end + + it 'deletes the namespaces associated with the cluster' do + expect { go }.to change { Clusters::KubernetesNamespace.count } + + expect(response).to redirect_to(project_cluster_path(project, cluster)) + expect(cluster.kubernetes_namespaces).to be_empty + end + + describe 'security' do + it { expect { go }.to be_allowed_for(:admin) } + it { expect { go }.to be_allowed_for(:owner).of(project) } + it { expect { go }.to be_allowed_for(:maintainer).of(project) } + it { expect { go }.to be_denied_for(:developer).of(project) } + it { expect { go }.to be_denied_for(:reporter).of(project) } + it { expect { go }.to be_denied_for(:guest).of(project) } + it { expect { go }.to be_denied_for(:user) } + it { expect { go }.to be_denied_for(:external) } + end + end + describe 'GET cluster_status' do let(:cluster) { create(:cluster, :providing_by_gcp, projects: [project]) } -- cgit v1.2.1