summaryrefslogtreecommitdiff
path: root/spec/presenters/clusters/cluster_presenter_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/presenters/clusters/cluster_presenter_spec.rb')
-rw-r--r--spec/presenters/clusters/cluster_presenter_spec.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/spec/presenters/clusters/cluster_presenter_spec.rb b/spec/presenters/clusters/cluster_presenter_spec.rb
new file mode 100644
index 00000000000..48d4f3671c5
--- /dev/null
+++ b/spec/presenters/clusters/cluster_presenter_spec.rb
@@ -0,0 +1,34 @@
+require 'spec_helper'
+
+describe Clusters::ClusterPresenter do
+ let(:cluster) { create(:cluster, :provided_by_gcp) }
+
+ subject(:presenter) do
+ described_class.new(cluster)
+ end
+
+ it 'inherits from Gitlab::View::Presenter::Delegated' do
+ expect(described_class.superclass).to eq(Gitlab::View::Presenter::Delegated)
+ end
+
+ describe '#initialize' do
+ it 'takes a cluster and optional params' do
+ expect { presenter }.not_to raise_error
+ end
+
+ it 'exposes cluster' do
+ expect(presenter.cluster).to eq(cluster)
+ end
+
+ it 'forwards missing methods to cluster' do
+ expect(presenter.status).to eq(cluster.status)
+ end
+ end
+
+ describe '#gke_cluster_url' do
+ subject { described_class.new(cluster).gke_cluster_url }
+
+ it { is_expected.to include(cluster.provider.zone) }
+ it { is_expected.to include(cluster.name) }
+ end
+end