diff --git a/spec/models/clusters/applications/cert_manager_spec.rb b/spec/models/clusters/applications/cert_manager_spec.rb
index 6b1bcce1081527346570a087125125c74d50af75..79a06c354597167f2619ceded871ec9f41df2110 100644
--- a/spec/models/clusters/applications/cert_manager_spec.rb
+++ b/spec/models/clusters/applications/cert_manager_spec.rb
@@ -5,6 +5,7 @@ describe Clusters::Applications::CertManager do
 
   include_examples 'cluster application core specs', :clusters_applications_cert_managers
   include_examples 'cluster application status specs', :clusters_applications_cert_managers
+  include_examples 'cluster application initial status specs'
 
   describe '#install_command' do
     let(:cluster_issuer_file) { { "cluster_issuer.yaml": "---\napiVersion: certmanager.k8s.io/v1alpha1\nkind: ClusterIssuer\nmetadata:\n  name: letsencrypt-prod\nspec:\n  acme:\n    server: https://acme-v02.api.letsencrypt.org/directory\n    email: admin@example.com\n    privateKeySecretRef:\n      name: letsencrypt-prod\n    http01: {}\n" } }
diff --git a/spec/models/clusters/applications/ingress_spec.rb b/spec/models/clusters/applications/ingress_spec.rb
index 811d0026535d4161b9439bc43a990c1cfead7d30..6d48131d1ccea6d8ae1093de572d8dc998c8368b 100644
--- a/spec/models/clusters/applications/ingress_spec.rb
+++ b/spec/models/clusters/applications/ingress_spec.rb
@@ -8,6 +8,7 @@ describe Clusters::Applications::Ingress do
   include_examples 'cluster application core specs', :clusters_applications_ingress
   include_examples 'cluster application status specs', :clusters_applications_ingress
   include_examples 'cluster application helm specs', :clusters_applications_ingress
+  include_examples 'cluster application initial status specs'
 
   before do
     allow(ClusterWaitForIngressIpAddressWorker).to receive(:perform_in)
diff --git a/spec/models/clusters/applications/knative_spec.rb b/spec/models/clusters/applications/knative_spec.rb
index 55443bb2d4fd1e195690e3b57844854913c05334..5519615d52ddbd3d3915e8cf31e832b590edc7ae 100644
--- a/spec/models/clusters/applications/knative_spec.rb
+++ b/spec/models/clusters/applications/knative_spec.rb
@@ -9,6 +9,7 @@ describe Clusters::Applications::Knative do
   include_examples 'cluster application core specs', :clusters_applications_knative
   include_examples 'cluster application status specs', :clusters_applications_knative
   include_examples 'cluster application helm specs', :clusters_applications_knative
+  include_examples 'cluster application initial status specs'
 
   before do
     allow(ClusterWaitForIngressIpAddressWorker).to receive(:perform_in)
diff --git a/spec/models/clusters/applications/prometheus_spec.rb b/spec/models/clusters/applications/prometheus_spec.rb
index 36a6e4c347bf6778e1fb68286563b7aef09587f6..073fbded8ac37f473bfbb1699fa6922cf826d902 100644
--- a/spec/models/clusters/applications/prometheus_spec.rb
+++ b/spec/models/clusters/applications/prometheus_spec.rb
@@ -6,6 +6,7 @@ describe Clusters::Applications::Prometheus do
   include_examples 'cluster application core specs', :clusters_applications_prometheus
   include_examples 'cluster application status specs', :clusters_applications_prometheus
   include_examples 'cluster application helm specs', :clusters_applications_prometheus
+  include_examples 'cluster application initial status specs'
 
   describe '.installed' do
     subject { described_class.installed }
diff --git a/spec/models/clusters/applications/runner_spec.rb b/spec/models/clusters/applications/runner_spec.rb
index 3e6daf8a1674d5b7b769d1513535d9d5f5e10c92..96b7b02dbaf2ab8e64e6f4ffd9a631c87e9c3de4 100644
--- a/spec/models/clusters/applications/runner_spec.rb
+++ b/spec/models/clusters/applications/runner_spec.rb
@@ -6,6 +6,7 @@ describe Clusters::Applications::Runner do
   include_examples 'cluster application core specs', :clusters_applications_runner
   include_examples 'cluster application status specs', :clusters_applications_runner
   include_examples 'cluster application helm specs', :clusters_applications_runner
+  include_examples 'cluster application initial status specs'
 
   it { is_expected.to belong_to(:runner) }
 
diff --git a/spec/support/shared_examples/models/cluster_application_initial_status.rb b/spec/support/shared_examples/models/cluster_application_initial_status.rb
new file mode 100644
index 0000000000000000000000000000000000000000..9775d87953c2e58275562f600964b92ec77ca563
--- /dev/null
+++ b/spec/support/shared_examples/models/cluster_application_initial_status.rb
@@ -0,0 +1,29 @@
+# frozen_string_literal: true
+
+shared_examples 'cluster application initial status specs' do
+  describe '#status' do
+    let(:cluster) { create(:cluster, :provided_by_gcp) }
+
+    subject { described_class.new(cluster: cluster) }
+
+    context 'when application helm is scheduled' do
+      before do
+        create(:clusters_applications_helm, :scheduled, cluster: cluster)
+      end
+
+      it 'defaults to :not_installable' do
+        expect(subject.status_name).to be(:not_installable)
+      end
+    end
+
+    context 'when application is scheduled' do
+      before do
+        create(:clusters_applications_helm, :installed, cluster: cluster)
+      end
+
+      it 'sets a default status' do
+        expect(subject.status_name).to be(:installable)
+      end
+    end
+  end
+end
diff --git a/spec/support/shared_examples/models/cluster_application_status_shared_examples.rb b/spec/support/shared_examples/models/cluster_application_status_shared_examples.rb
index af6147bed397cc8ce8539294045a7c122b10a18b..554f2e747bc1ba5346d3827ee7b09e70a695984c 100644
--- a/spec/support/shared_examples/models/cluster_application_status_shared_examples.rb
+++ b/spec/support/shared_examples/models/cluster_application_status_shared_examples.rb
@@ -7,30 +7,6 @@ shared_examples 'cluster application status specs' do |application_name|
     it 'sets a default status' do
       expect(subject.status_name).to be(:not_installable)
     end
-
-    context 'when application helm is scheduled' do
-      before do
-        create(:clusters_applications_helm, :scheduled, cluster: cluster)
-      end
-
-      it 'defaults to :not_installable' do
-        expect(subject.status_name).to be(:not_installable)
-      end
-    end
-
-    context 'when application is scheduled' do
-      before do
-        create(:clusters_applications_helm, :installed, cluster: cluster)
-
-        if described_class == Clusters::Applications::Jupyter
-          create(:clusters_applications_ingress, :installed, external_ip: '127.0.0.1', cluster: cluster)
-        end
-      end
-
-      it 'sets a default status' do
-        expect(subject.status_name).to be(:installable)
-      end
-    end
   end
 
   describe 'status state machine' do