diff options
author | Krasimir Angelov <kangelov@gitlab.com> | 2019-08-02 09:02:05 +0300 |
---|---|---|
committer | Krasimir Angelov <kangelov@gitlab.com> | 2019-08-02 09:02:05 +0300 |
commit | ffd54f17f8fff7a659fd4ca116eabc338a5acd95 (patch) | |
tree | 2cdc7b5c61a867a88b5ce6f8c510f4327821c647 /spec/models/environment_spec.rb | |
parent | 533237a097281dbe4fb1c821d5823c4de8c8f6af (diff) | |
download | gitlab-ce-27644-environment-state-created.tar.gz |
Change environment intial state to created instead of available27644-environment-state-created
Because we create environments too early (and rely on this) they may not
have successfull deployments yet but are mark as `available`. Introduce
new `created` intitial state so that it is easier to differentiate them.
Diffstat (limited to 'spec/models/environment_spec.rb')
-rw-r--r-- | spec/models/environment_spec.rb | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/spec/models/environment_spec.rb b/spec/models/environment_spec.rb index ce0681c4331..bbe0fdada50 100644 --- a/spec/models/environment_spec.rb +++ b/spec/models/environment_spec.rb @@ -517,7 +517,15 @@ describe Environment, :use_clean_rails_memory_store_caching do describe '#has_terminals?' do subject { environment.has_terminals? } + context 'when the environment is created' do + it { is_expected.to be_falsy } + end + context 'when the environment is available' do + before do + environment.start + end + context 'with a deployment service' do context 'when user configured kubernetes from CI/CD > Clusters' do let!(:cluster) { create(:cluster, :project, :provided_by_gcp) } @@ -525,6 +533,7 @@ describe Environment, :use_clean_rails_memory_store_caching do context 'with deployment' do let!(:deployment) { create(:deployment, :success, environment: environment) } + it { is_expected.to be_truthy } end @@ -539,7 +548,7 @@ describe Environment, :use_clean_rails_memory_store_caching do end end - context 'when the environment is unavailable' do + context 'when the environment is stopped' do before do environment.stop end @@ -609,7 +618,7 @@ describe Environment, :use_clean_rails_memory_store_caching do describe '#calculate_reactive_cache' do let(:cluster) { create(:cluster, :project, :provided_by_user) } let(:project) { cluster.project } - let(:environment) { create(:environment, project: project) } + let(:environment) { create(:environment, project: project, state: :available) } let!(:deployment) { create(:deployment, :success, environment: environment) } subject { environment.calculate_reactive_cache } @@ -641,7 +650,17 @@ describe Environment, :use_clean_rails_memory_store_caching do describe '#has_metrics?' do subject { environment.has_metrics? } + context 'when the environment is created' do + let(:project) { create(:prometheus_project) } + + it { is_expected.to be_falsy } + end + context 'when the environment is available' do + before do + environment.start + end + context 'with a deployment service' do let(:project) { create(:prometheus_project) } @@ -660,7 +679,7 @@ describe Environment, :use_clean_rails_memory_store_caching do end end - context 'when the environment is unavailable' do + context 'when the environment is stopped' do let(:project) { create(:prometheus_project) } before do |