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/jobs/bridge/app_spec.js')
-rw-r--r--spec/frontend/jobs/bridge/app_spec.js146
1 files changed, 0 insertions, 146 deletions
diff --git a/spec/frontend/jobs/bridge/app_spec.js b/spec/frontend/jobs/bridge/app_spec.js
deleted file mode 100644
index 210dcfa364b..00000000000
--- a/spec/frontend/jobs/bridge/app_spec.js
+++ /dev/null
@@ -1,146 +0,0 @@
-import Vue, { nextTick } from 'vue';
-import { shallowMount } from '@vue/test-utils';
-
-import { GlBreakpointInstance } from '@gitlab/ui/dist/utils';
-import { GlLoadingIcon } from '@gitlab/ui';
-import VueApollo from 'vue-apollo';
-import createMockApollo from 'helpers/mock_apollo_helper';
-import getPipelineQuery from '~/jobs/bridge/graphql/queries/pipeline.query.graphql';
-import waitForPromises from 'helpers/wait_for_promises';
-import BridgeApp from '~/jobs/bridge/app.vue';
-import BridgeEmptyState from '~/jobs/bridge/components/empty_state.vue';
-import BridgeSidebar from '~/jobs/bridge/components/sidebar.vue';
-import CiHeader from '~/vue_shared/components/header_ci_component.vue';
-import {
- MOCK_BUILD_ID,
- MOCK_PIPELINE_IID,
- MOCK_PROJECT_FULL_PATH,
- mockPipelineQueryResponse,
-} from './mock_data';
-
-describe('Bridge Show Page', () => {
- let wrapper;
- let mockApollo;
- let mockPipelineQuery;
-
- const createComponent = (options) => {
- wrapper = shallowMount(BridgeApp, {
- provide: {
- buildId: MOCK_BUILD_ID,
- projectFullPath: MOCK_PROJECT_FULL_PATH,
- pipelineIid: MOCK_PIPELINE_IID,
- },
- mocks: {
- $apollo: {
- queries: {
- pipeline: {
- loading: true,
- },
- },
- },
- },
- ...options,
- });
- };
-
- const createComponentWithApollo = () => {
- const handlers = [[getPipelineQuery, mockPipelineQuery]];
- Vue.use(VueApollo);
- mockApollo = createMockApollo(handlers);
-
- createComponent({
- apolloProvider: mockApollo,
- mocks: {},
- });
- };
-
- const findCiHeader = () => wrapper.findComponent(CiHeader);
- const findEmptyState = () => wrapper.findComponent(BridgeEmptyState);
- const findLoadingIcon = () => wrapper.findComponent(GlLoadingIcon);
- const findSidebar = () => wrapper.findComponent(BridgeSidebar);
-
- beforeEach(() => {
- mockPipelineQuery = jest.fn();
- });
-
- afterEach(() => {
- mockPipelineQuery.mockReset();
- wrapper.destroy();
- });
-
- describe('while pipeline query is loading', () => {
- beforeEach(() => {
- createComponent();
- });
-
- it('renders loading icon', () => {
- expect(findLoadingIcon().exists()).toBe(true);
- });
- });
-
- describe('after pipeline query is loaded', () => {
- beforeEach(async () => {
- mockPipelineQuery.mockResolvedValue(mockPipelineQueryResponse);
- createComponentWithApollo();
- await waitForPromises();
- });
-
- it('query is called with correct variables', async () => {
- expect(mockPipelineQuery).toHaveBeenCalledTimes(1);
- expect(mockPipelineQuery).toHaveBeenCalledWith({
- fullPath: MOCK_PROJECT_FULL_PATH,
- iid: MOCK_PIPELINE_IID,
- });
- });
-
- it('renders CI header state', () => {
- expect(findCiHeader().exists()).toBe(true);
- });
-
- it('renders empty state', () => {
- expect(findEmptyState().exists()).toBe(true);
- });
-
- it('renders sidebar', () => {
- expect(findSidebar().exists()).toBe(true);
- });
- });
-
- describe('sidebar expansion', () => {
- beforeEach(async () => {
- mockPipelineQuery.mockResolvedValue(mockPipelineQueryResponse);
- createComponentWithApollo();
- await waitForPromises();
- });
-
- describe('on resize', () => {
- it.each`
- breakpoint | isSidebarExpanded
- ${'xs'} | ${false}
- ${'sm'} | ${false}
- ${'md'} | ${true}
- ${'lg'} | ${true}
- ${'xl'} | ${true}
- `(
- 'sets isSidebarExpanded to `$isSidebarExpanded` when the breakpoint is "$breakpoint"',
- async ({ breakpoint, isSidebarExpanded }) => {
- jest.spyOn(GlBreakpointInstance, 'getBreakpointSize').mockReturnValue(breakpoint);
-
- window.dispatchEvent(new Event('resize'));
- await nextTick();
-
- expect(findSidebar().exists()).toBe(isSidebarExpanded);
- },
- );
- });
-
- it('toggles expansion on button click', async () => {
- expect(findSidebar().exists()).toBe(true);
-
- wrapper.vm.toggleSidebar();
- await nextTick();
-
- expect(findSidebar().exists()).toBe(false);
- });
- });
-});