diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-11-22 00:06:08 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-11-22 00:06:08 +0000 |
commit | 157f9a451a428f66666ba85d8b880df78aff6cc4 (patch) | |
tree | 7c38cacafb9720d144a6add0a170a07a7cc376f6 /spec | |
parent | 7f15e74dae019ac96c65ec769eae2d67aae65a8c (diff) | |
download | gitlab-ce-157f9a451a428f66666ba85d8b880df78aff6cc4.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec')
-rw-r--r-- | spec/javascripts/vue_mr_widget/components/review_app_link_spec.js | 10 | ||||
-rw-r--r-- | spec/javascripts/vue_mr_widget/mock_data.js | 15 | ||||
-rw-r--r-- | spec/models/project_import_state_spec.rb | 12 | ||||
-rw-r--r-- | spec/models/project_spec.rb | 1 | ||||
-rw-r--r-- | spec/presenters/clusters/cluster_presenter_spec.rb | 39 |
5 files changed, 64 insertions, 13 deletions
diff --git a/spec/javascripts/vue_mr_widget/components/review_app_link_spec.js b/spec/javascripts/vue_mr_widget/components/review_app_link_spec.js index 68a65bd21c6..069bc14e01e 100644 --- a/spec/javascripts/vue_mr_widget/components/review_app_link_spec.js +++ b/spec/javascripts/vue_mr_widget/components/review_app_link_spec.js @@ -1,5 +1,6 @@ import Vue from 'vue'; import component from '~/vue_merge_request_widget/components/review_app_link.vue'; +import { mockTracking, triggerEvent } from 'spec/helpers/tracking_helper'; import mountComponent from '../../helpers/vue_mount_component_helper'; describe('review app link', () => { @@ -35,4 +36,13 @@ describe('review app link', () => { it('renders svg icon', () => { expect(el.querySelector('svg')).not.toBeNull(); }); + + it('tracks an event when clicked', () => { + const spy = mockTracking('_category_', el, spyOn); + triggerEvent(el); + + expect(spy).toHaveBeenCalledWith('_category_', 'open_review_app', { + label: 'review_app', + }); + }); }); diff --git a/spec/javascripts/vue_mr_widget/mock_data.js b/spec/javascripts/vue_mr_widget/mock_data.js index 089ec08fbf9..40bec001ffe 100644 --- a/spec/javascripts/vue_mr_widget/mock_data.js +++ b/spec/javascripts/vue_mr_widget/mock_data.js @@ -284,7 +284,20 @@ export const mockStore = { targetBranch: 'target-branch', sourceBranch: 'source-branch', sourceBranchLink: 'source-branch-link', - deployments: [{ id: 0, name: 'bogus' }, { id: 1, name: 'bogus-docs' }], + deployments: [ + { + id: 0, + name: 'bogus', + external_url: 'https://fake.com', + external_url_formatted: 'https://fake.com', + }, + { + id: 1, + name: 'bogus-docs', + external_url: 'https://fake.com', + external_url_formatted: 'https://fake.com', + }, + ], postMergeDeployments: [{ id: 0, name: 'prod' }, { id: 1, name: 'prod-docs' }], troubleshootingDocsPath: 'troubleshooting-docs-path', ciStatus: 'ci-status', diff --git a/spec/models/project_import_state_spec.rb b/spec/models/project_import_state_spec.rb index 0b4dcc62ff6..babde7b0670 100644 --- a/spec/models/project_import_state_spec.rb +++ b/spec/models/project_import_state_spec.rb @@ -95,30 +95,28 @@ describe ProjectImportState, type: :model do end end - describe '#remove_jid', :clean_gitlab_redis_cache do - let(:project) { } - + describe 'clearing `jid` after finish', :clean_gitlab_redis_cache do context 'without an JID' do it 'does nothing' do - import_state = create(:import_state) + import_state = create(:import_state, :started) expect(Gitlab::SidekiqStatus) .not_to receive(:unset) - import_state.remove_jid + import_state.finish! end end context 'with an JID' do it 'unsets the JID' do - import_state = create(:import_state, jid: '123') + import_state = create(:import_state, :started, jid: '123') expect(Gitlab::SidekiqStatus) .to receive(:unset) .with('123') .and_call_original - import_state.remove_jid + import_state.finish! expect(import_state.jid).to be_nil end diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb index 815ab7aa166..4e6a4bd6b51 100644 --- a/spec/models/project_spec.rb +++ b/spec/models/project_spec.rb @@ -4335,7 +4335,6 @@ describe Project do expect(project.wiki.repository).to receive(:after_import) expect(import_state).to receive(:finish) expect(project).to receive(:update_project_counter_caches) - expect(import_state).to receive(:remove_jid) expect(project).to receive(:after_create_default_branch) expect(project).to receive(:refresh_markdown_cache!) expect(InternalId).to receive(:flush_records!).with(project: project) diff --git a/spec/presenters/clusters/cluster_presenter_spec.rb b/spec/presenters/clusters/cluster_presenter_spec.rb index 8bc5374f2db..6a1360807b7 100644 --- a/spec/presenters/clusters/cluster_presenter_spec.rb +++ b/spec/presenters/clusters/cluster_presenter_spec.rb @@ -153,11 +153,42 @@ describe Clusters::ClusterPresenter do end end - describe '#gke_cluster_url' do - subject { described_class.new(cluster).gke_cluster_url } + describe '#provider_label' do + let(:cluster) { create(:cluster, provider_type: provider_type) } - it { is_expected.to include(cluster.provider.zone) } - it { is_expected.to include(cluster.name) } + subject { described_class.new(cluster).provider_label } + + context 'AWS provider' do + let(:provider_type) { :aws } + + it { is_expected.to eq('Elastic Kubernetes Service') } + end + + context 'GCP provider' do + let(:provider_type) { :gcp } + + it { is_expected.to eq('Google Kubernetes Engine') } + end + end + + describe '#provider_management_url' do + let(:cluster) { provider.cluster } + + subject { described_class.new(cluster).provider_management_url } + + context 'AWS provider' do + let(:provider) { create(:cluster_provider_aws) } + + it { is_expected.to include(provider.region) } + it { is_expected.to include(cluster.name) } + end + + context 'GCP provider' do + let(:provider) { create(:cluster_provider_gcp) } + + it { is_expected.to include(provider.zone) } + it { is_expected.to include(cluster.name) } + end end describe '#cluster_type_description' do |