diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-02-18 09:45:46 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-02-18 09:45:46 +0000 |
commit | a7b3560714b4d9cc4ab32dffcd1f74a284b93580 (patch) | |
tree | 7452bd5c3545c2fa67a28aa013835fb4fa071baf /spec/frontend/google_cloud | |
parent | ee9173579ae56a3dbfe5afe9f9410c65bb327ca7 (diff) | |
download | gitlab-ce-3cc9186904540cc13152bba687400d46ea51d15d.tar.gz |
Add latest changes from gitlab-org/gitlab@14-8-stable-eev14.8.0-rc42
Diffstat (limited to 'spec/frontend/google_cloud')
5 files changed, 35 insertions, 18 deletions
diff --git a/spec/frontend/google_cloud/components/app_spec.js b/spec/frontend/google_cloud/components/app_spec.js index 92bc7596f7d..5ddc0ffa50f 100644 --- a/spec/frontend/google_cloud/components/app_spec.js +++ b/spec/frontend/google_cloud/components/app_spec.js @@ -24,8 +24,8 @@ const HOME_PROPS = { serviceAccounts: [{}, {}], createServiceAccountUrl: '#url-create-service-account', emptyIllustrationUrl: '#url-empty-illustration', - deploymentsCloudRunUrl: '#url-deployments-cloud-run', - deploymentsCloudStorageUrl: '#deploymentsCloudStorageUrl', + enableCloudRunUrl: '#url-enable-cloud-run', + enableCloudStorageUrl: '#enableCloudStorageUrl', }; describe('google_cloud App component', () => { diff --git a/spec/frontend/google_cloud/components/deployments_service_table_spec.js b/spec/frontend/google_cloud/components/deployments_service_table_spec.js index 76c3bfd00a8..882376547c4 100644 --- a/spec/frontend/google_cloud/components/deployments_service_table_spec.js +++ b/spec/frontend/google_cloud/components/deployments_service_table_spec.js @@ -12,8 +12,8 @@ describe('google_cloud DeploymentsServiceTable component', () => { beforeEach(() => { const propsData = { - cloudRunUrl: '#url-deployments-cloud-run', - cloudStorageUrl: '#url-deployments-cloud-storage', + cloudRunUrl: '#url-enable-cloud-run', + cloudStorageUrl: '#url-enable-cloud-storage', }; wrapper = mount(DeploymentsServiceTable, { propsData }); }); @@ -29,12 +29,13 @@ describe('google_cloud DeploymentsServiceTable component', () => { it('should contain configure cloud run button', () => { const cloudRunButton = findCloudRunButton(); expect(cloudRunButton.exists()).toBe(true); - expect(cloudRunButton.props().disabled).toBe(true); + expect(cloudRunButton.attributes('href')).toBe('#url-enable-cloud-run'); }); it('should contain configure cloud storage button', () => { const cloudStorageButton = findCloudStorageButton(); expect(cloudStorageButton.exists()).toBe(true); expect(cloudStorageButton.props().disabled).toBe(true); + expect(cloudStorageButton.attributes('href')).toBe('#url-enable-cloud-storage'); }); }); diff --git a/spec/frontend/google_cloud/components/home_spec.js b/spec/frontend/google_cloud/components/home_spec.js index 3a009fc88ce..57cf831b19b 100644 --- a/spec/frontend/google_cloud/components/home_spec.js +++ b/spec/frontend/google_cloud/components/home_spec.js @@ -20,8 +20,8 @@ describe('google_cloud Home component', () => { serviceAccounts: [{}, {}], createServiceAccountUrl: '#url-create-service-account', emptyIllustrationUrl: '#url-empty-illustration', - deploymentsCloudRunUrl: '#url-deployments-cloud-run', - deploymentsCloudStorageUrl: '#deploymentsCloudStorageUrl', + enableCloudRunUrl: '#url-enable-cloud-run', + enableCloudStorageUrl: '#enableCloudStorageUrl', }; beforeEach(() => { diff --git a/spec/frontend/google_cloud/components/service_accounts_form_spec.js b/spec/frontend/google_cloud/components/service_accounts_form_spec.js index 5394d0cdaef..7262e12c84d 100644 --- a/spec/frontend/google_cloud/components/service_accounts_form_spec.js +++ b/spec/frontend/google_cloud/components/service_accounts_form_spec.js @@ -1,5 +1,5 @@ import { shallowMount } from '@vue/test-utils'; -import { GlButton, GlFormGroup, GlFormSelect } from '@gitlab/ui'; +import { GlButton, GlFormGroup, GlFormSelect, GlFormCheckbox } from '@gitlab/ui'; import ServiceAccountsForm from '~/google_cloud/components/service_accounts_form.vue'; describe('ServiceAccountsForm component', () => { @@ -9,11 +9,12 @@ describe('ServiceAccountsForm component', () => { const findAllFormGroups = () => wrapper.findAllComponents(GlFormGroup); const findAllFormSelects = () => wrapper.findAllComponents(GlFormSelect); const findAllButtons = () => wrapper.findAllComponents(GlButton); + const findCheckbox = () => wrapper.findComponent(GlFormCheckbox); const propsData = { gcpProjects: [], environments: [], cancelPath: '#cancel-url' }; beforeEach(() => { - wrapper = shallowMount(ServiceAccountsForm, { propsData }); + wrapper = shallowMount(ServiceAccountsForm, { propsData, stubs: { GlFormCheckbox } }); }); afterEach(() => { @@ -35,8 +36,8 @@ describe('ServiceAccountsForm component', () => { }); it('contains Environments form group', () => { - const formGorup = findAllFormGroups().at(1); - expect(formGorup.exists()).toBe(true); + const formGroup = findAllFormGroups().at(1); + expect(formGroup.exists()).toBe(true); }); it('contains Environments dropdown', () => { @@ -56,4 +57,14 @@ describe('ServiceAccountsForm component', () => { expect(button.text()).toBe(ServiceAccountsForm.i18n.cancelLabel); expect(button.attributes('href')).toBe('#cancel-url'); }); + + it('contains Confirmation checkbox', () => { + const checkbox = findCheckbox(); + expect(checkbox.text()).toBe(ServiceAccountsForm.i18n.checkboxLabel); + }); + + it('checkbox must be required', () => { + const checkbox = findCheckbox(); + expect(checkbox.attributes('required')).toBe('true'); + }); }); diff --git a/spec/frontend/google_cloud/components/service_accounts_list_spec.js b/spec/frontend/google_cloud/components/service_accounts_list_spec.js index cdb3f74051c..f7051c8a53d 100644 --- a/spec/frontend/google_cloud/components/service_accounts_list_spec.js +++ b/spec/frontend/google_cloud/components/service_accounts_list_spec.js @@ -1,5 +1,5 @@ import { mount } from '@vue/test-utils'; -import { GlButton, GlEmptyState, GlTable } from '@gitlab/ui'; +import { GlAlert, GlButton, GlEmptyState, GlTable } from '@gitlab/ui'; import ServiceAccountsList from '~/google_cloud/components/service_accounts_list.vue'; describe('ServiceAccounts component', () => { @@ -28,7 +28,7 @@ describe('ServiceAccounts component', () => { it('shows the link to create new service accounts', () => { const button = findButtonInEmptyState(); expect(button.exists()).toBe(true); - expect(button.text()).toBe('Create service account'); + expect(button.text()).toBe(ServiceAccountsList.i18n.createServiceAccount); expect(button.attributes('href')).toBe('#create-url'); }); }); @@ -41,6 +41,7 @@ describe('ServiceAccounts component', () => { const findTable = () => wrapper.findComponent(GlTable); const findRows = () => findTable().findAll('tr'); const findButton = () => wrapper.findComponent(GlButton); + const findSecretManagerTip = () => wrapper.findComponent(GlAlert); beforeEach(() => { const propsData = { @@ -52,13 +53,11 @@ describe('ServiceAccounts component', () => { }); it('shows the title', () => { - expect(findTitle().text()).toBe('Service Accounts'); + expect(findTitle().text()).toBe(ServiceAccountsList.i18n.serviceAccountsTitle); }); it('shows the description', () => { - expect(findDescription().text()).toBe( - 'Service Accounts keys authorize GitLab to deploy your Google Cloud project', - ); + expect(findDescription().text()).toBe(ServiceAccountsList.i18n.serviceAccountsDescription); }); it('shows the table', () => { @@ -72,8 +71,14 @@ describe('ServiceAccounts component', () => { it('shows the link to create new service accounts', () => { const button = findButton(); expect(button.exists()).toBe(true); - expect(button.text()).toBe('Create service account'); + expect(button.text()).toBe(ServiceAccountsList.i18n.createServiceAccount); expect(button.attributes('href')).toBe('#create-url'); }); + + it('must contain secret managers tip', () => { + const tip = findSecretManagerTip(); + const expectedText = ServiceAccountsList.i18n.secretManagersDescription.substr(0, 48); + expect(tip.text()).toContain(expectedText); + }); }); }); |