diff options
author | Matija Čupić <matteeyah@gmail.com> | 2018-03-29 21:17:18 +0200 |
---|---|---|
committer | Matija Čupić <matteeyah@gmail.com> | 2018-03-29 21:17:18 +0200 |
commit | a5f9e49f1317345d1b72566ecff188dff5f74913 (patch) | |
tree | ec09bd5ed946c757dfa806be134e7ece2d184236 | |
parent | 427eeb43bf4b382b873d3fe839029c57b117d61b (diff) | |
download | gitlab-ce-a5f9e49f1317345d1b72566ecff188dff5f74913.tar.gz |
Add user_provided and gcp_provided cluster scopes
-rw-r--r-- | app/models/clusters/cluster.rb | 2 | ||||
-rw-r--r-- | spec/models/clusters/cluster_spec.rb | 24 |
2 files changed, 26 insertions, 0 deletions
diff --git a/app/models/clusters/cluster.rb b/app/models/clusters/cluster.rb index 49eb069016a..dcfc3e02f0e 100644 --- a/app/models/clusters/cluster.rb +++ b/app/models/clusters/cluster.rb @@ -50,6 +50,8 @@ module Clusters scope :enabled, -> { where(enabled: true) } scope :disabled, -> { where(enabled: false) } + scope :user_provided, -> { where(provider_type: ::Clusters::Cluster.provider_types[:user]) } + scope :gcp_provided, -> { where(provider_type: ::Clusters::Cluster.provider_types[:gcp]) } def status_name if provider diff --git a/spec/models/clusters/cluster_spec.rb b/spec/models/clusters/cluster_spec.rb index 8f12a0e3085..ae96e5d1aa2 100644 --- a/spec/models/clusters/cluster_spec.rb +++ b/spec/models/clusters/cluster_spec.rb @@ -39,6 +39,30 @@ describe Clusters::Cluster do it { is_expected.to contain_exactly(cluster) } end + describe '.user_provided' do + subject { described_class.user_provided } + + let!(:cluster) { create(:cluster, :provided_by_user) } + + before do + create(:cluster, :provided_by_gcp) + end + + it { is_expected.to contain_exactly(cluster) } + end + + describe '.gcp_provided' do + subject { described_class.gcp_provided } + + let!(:cluster) { create(:cluster, :provided_by_gcp) } + + before do + create(:cluster, :provided_by_user) + end + + it { is_expected.to contain_exactly(cluster) } + end + describe 'validation' do subject { cluster.valid? } |