summaryrefslogtreecommitdiff
path: root/spec/frontend/google_cloud/components/app_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/google_cloud/components/app_spec.js')
-rw-r--r--spec/frontend/google_cloud/components/app_spec.js77
1 files changed, 0 insertions, 77 deletions
diff --git a/spec/frontend/google_cloud/components/app_spec.js b/spec/frontend/google_cloud/components/app_spec.js
deleted file mode 100644
index 0cafe6d3b9d..00000000000
--- a/spec/frontend/google_cloud/components/app_spec.js
+++ /dev/null
@@ -1,77 +0,0 @@
-import { shallowMount } from '@vue/test-utils';
-import { mapValues } from 'lodash';
-import App from '~/google_cloud/components/app.vue';
-import Home from '~/google_cloud/components/home.vue';
-import IncubationBanner from '~/google_cloud/components/incubation_banner.vue';
-import ServiceAccountsForm from '~/google_cloud/components/service_accounts_form.vue';
-import GcpError from '~/google_cloud/components/errors/gcp_error.vue';
-import NoGcpProjects from '~/google_cloud/components/errors/no_gcp_projects.vue';
-
-const BASE_FEEDBACK_URL =
- 'https://gitlab.com/gitlab-org/incubation-engineering/five-minute-production/feedback/-/issues/new';
-const SCREEN_COMPONENTS = {
- Home,
- ServiceAccountsForm,
- GcpError,
- NoGcpProjects,
-};
-const SERVICE_ACCOUNTS_FORM_PROPS = {
- gcpProjects: [1, 2, 3],
- refs: [4, 5, 6],
- cancelPath: '',
-};
-const HOME_PROPS = {
- serviceAccounts: [{}, {}],
- gcpRegions: [{}, {}],
- createServiceAccountUrl: '#url-create-service-account',
- configureGcpRegionsUrl: '#url-configure-gcp-regions',
- emptyIllustrationUrl: '#url-empty-illustration',
- enableCloudRunUrl: '#url-enable-cloud-run',
- enableCloudStorageUrl: '#enableCloudStorageUrl',
- revokeOauthUrl: '#revokeOauthUrl',
-};
-
-describe('google_cloud App component', () => {
- let wrapper;
-
- const findIncubationBanner = () => wrapper.findComponent(IncubationBanner);
-
- afterEach(() => {
- wrapper.destroy();
- });
-
- describe.each`
- screen | extraProps | componentName
- ${'gcp_error'} | ${{ error: 'mock_gcp_client_error' }} | ${'GcpError'}
- ${'no_gcp_projects'} | ${{}} | ${'NoGcpProjects'}
- ${'service_accounts_form'} | ${SERVICE_ACCOUNTS_FORM_PROPS} | ${'ServiceAccountsForm'}
- ${'home'} | ${HOME_PROPS} | ${'Home'}
- `('for screen=$screen', ({ screen, extraProps, componentName }) => {
- const component = SCREEN_COMPONENTS[componentName];
-
- beforeEach(() => {
- wrapper = shallowMount(App, { propsData: { screen, ...extraProps } });
- });
-
- it(`renders only ${componentName}`, () => {
- const existences = mapValues(SCREEN_COMPONENTS, (x) => wrapper.findComponent(x).exists());
-
- expect(existences).toEqual({
- ...mapValues(SCREEN_COMPONENTS, () => false),
- [componentName]: true,
- });
- });
-
- it(`renders the ${componentName} with props`, () => {
- expect(wrapper.findComponent(component).props()).toEqual(extraProps);
- });
-
- it('renders incubation banner', () => {
- expect(findIncubationBanner().props()).toEqual({
- shareFeedbackUrl: `${BASE_FEEDBACK_URL}?issuable_template=general_feedback`,
- reportBugUrl: `${BASE_FEEDBACK_URL}?issuable_template=report_bug`,
- featureRequestUrl: `${BASE_FEEDBACK_URL}?issuable_template=feature_request`,
- });
- });
- });
-});