Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/vue_shared/components/security_reports/artifact_downloads/merge_request_artifact_download_spec.js')
-rw-r--r--spec/frontend/vue_shared/components/security_reports/artifact_downloads/merge_request_artifact_download_spec.js104
1 files changed, 0 insertions, 104 deletions
diff --git a/spec/frontend/vue_shared/components/security_reports/artifact_downloads/merge_request_artifact_download_spec.js b/spec/frontend/vue_shared/components/security_reports/artifact_downloads/merge_request_artifact_download_spec.js
deleted file mode 100644
index 6eebd129beb..00000000000
--- a/spec/frontend/vue_shared/components/security_reports/artifact_downloads/merge_request_artifact_download_spec.js
+++ /dev/null
@@ -1,104 +0,0 @@
-import { shallowMount } from '@vue/test-utils';
-import Vue from 'vue';
-import VueApollo from 'vue-apollo';
-import createMockApollo from 'helpers/mock_apollo_helper';
-import {
- expectedDownloadDropdownPropsWithTitle,
- securityReportMergeRequestDownloadPathsQueryResponse,
-} from 'jest/vue_shared/security_reports/mock_data';
-import { createAlert } from '~/alert';
-import Component from '~/vue_shared/security_reports/components/artifact_downloads/merge_request_artifact_download.vue';
-import SecurityReportDownloadDropdown from '~/vue_shared/security_reports/components/security_report_download_dropdown.vue';
-import {
- REPORT_TYPE_SAST,
- REPORT_TYPE_SECRET_DETECTION,
-} from '~/vue_shared/security_reports/constants';
-import securityReportMergeRequestDownloadPathsQuery from '~/vue_shared/security_reports/graphql/queries/security_report_merge_request_download_paths.query.graphql';
-
-jest.mock('~/alert');
-
-describe('Merge request artifact Download', () => {
- let wrapper;
-
- const defaultProps = {
- reportTypes: [REPORT_TYPE_SAST, REPORT_TYPE_SECRET_DETECTION],
- targetProjectFullPath: '/path',
- mrIid: 123,
- };
-
- const createWrapper = ({ propsData, options }) => {
- wrapper = shallowMount(Component, {
- stubs: {
- SecurityReportDownloadDropdown,
- },
- propsData: {
- ...defaultProps,
- ...propsData,
- },
- ...options,
- });
- };
-
- const pendingHandler = () => new Promise(() => {});
- const successHandler = () =>
- Promise.resolve({ data: securityReportMergeRequestDownloadPathsQueryResponse });
- const failureHandler = () => Promise.resolve({ errors: [{ message: 'some error' }] });
- const createMockApolloProvider = (handler) => {
- Vue.use(VueApollo);
- const requestHandlers = [[securityReportMergeRequestDownloadPathsQuery, handler]];
-
- return createMockApollo(requestHandlers);
- };
-
- const findDownloadDropdown = () => wrapper.findComponent(SecurityReportDownloadDropdown);
-
- describe('given the query is loading', () => {
- beforeEach(() => {
- createWrapper({
- options: {
- apolloProvider: createMockApolloProvider(pendingHandler),
- },
- });
- });
-
- it('loading is true', () => {
- expect(findDownloadDropdown().props('loading')).toBe(true);
- });
- });
-
- describe('given the query loads successfully', () => {
- beforeEach(() => {
- createWrapper({
- options: {
- apolloProvider: createMockApolloProvider(successHandler),
- },
- });
- });
-
- it('renders the download dropdown', () => {
- expect(findDownloadDropdown().props()).toEqual(expectedDownloadDropdownPropsWithTitle);
- });
- });
-
- describe('given the query fails', () => {
- beforeEach(() => {
- createWrapper({
- options: {
- apolloProvider: createMockApolloProvider(failureHandler),
- },
- });
- });
-
- it('calls createAlert correctly', () => {
- expect(createAlert).toHaveBeenCalledWith({
- message: Component.i18n.apiError,
- captureError: true,
- error: expect.any(Error),
- });
- });
-
- it('renders nothing', () => {
- expect(findDownloadDropdown().props('artifacts')).toEqual([]);
- });
- });
-});