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/sidebar/labels_select_vue/store/actions_spec.js')
-rw-r--r--spec/frontend/vue_shared/components/sidebar/labels_select_vue/store/actions_spec.js265
1 files changed, 0 insertions, 265 deletions
diff --git a/spec/frontend/vue_shared/components/sidebar/labels_select_vue/store/actions_spec.js b/spec/frontend/vue_shared/components/sidebar/labels_select_vue/store/actions_spec.js
deleted file mode 100644
index edd044bd754..00000000000
--- a/spec/frontend/vue_shared/components/sidebar/labels_select_vue/store/actions_spec.js
+++ /dev/null
@@ -1,265 +0,0 @@
-import MockAdapter from 'axios-mock-adapter';
-
-import testAction from 'helpers/vuex_action_helper';
-import { createAlert } from '~/flash';
-import axios from '~/lib/utils/axios_utils';
-import * as actions from '~/vue_shared/components/sidebar/labels_select_vue/store/actions';
-import * as types from '~/vue_shared/components/sidebar/labels_select_vue/store/mutation_types';
-import defaultState from '~/vue_shared/components/sidebar/labels_select_vue/store/state';
-
-jest.mock('~/flash');
-
-describe('LabelsSelect Actions', () => {
- let state;
- const mockInitialState = {
- labels: [],
- selectedLabels: [],
- };
-
- beforeEach(() => {
- state = { ...defaultState() };
- });
-
- describe('setInitialState', () => {
- it('sets initial store state', () => {
- return testAction(
- actions.setInitialState,
- mockInitialState,
- state,
- [{ type: types.SET_INITIAL_STATE, payload: mockInitialState }],
- [],
- );
- });
- });
-
- describe('toggleDropdownButton', () => {
- it('toggles dropdown button', () => {
- return testAction(
- actions.toggleDropdownButton,
- {},
- state,
- [{ type: types.TOGGLE_DROPDOWN_BUTTON }],
- [],
- );
- });
- });
-
- describe('toggleDropdownContents', () => {
- it('toggles dropdown contents', () => {
- return testAction(
- actions.toggleDropdownContents,
- {},
- state,
- [{ type: types.TOGGLE_DROPDOWN_CONTENTS }],
- [],
- );
- });
- });
-
- describe('toggleDropdownContentsCreateView', () => {
- it('toggles dropdown create view', () => {
- return testAction(
- actions.toggleDropdownContentsCreateView,
- {},
- state,
- [{ type: types.TOGGLE_DROPDOWN_CONTENTS_CREATE_VIEW }],
- [],
- );
- });
- });
-
- describe('requestLabels', () => {
- it('sets value of `state.labelsFetchInProgress` to `true`', () => {
- return testAction(actions.requestLabels, {}, state, [{ type: types.REQUEST_LABELS }], []);
- });
- });
-
- describe('receiveLabelsSuccess', () => {
- it('sets provided labels to `state.labels`', () => {
- const labels = [{ id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }];
-
- return testAction(
- actions.receiveLabelsSuccess,
- labels,
- state,
- [{ type: types.RECEIVE_SET_LABELS_SUCCESS, payload: labels }],
- [],
- );
- });
- });
-
- describe('receiveLabelsFailure', () => {
- it('sets value `state.labelsFetchInProgress` to `false`', () => {
- return testAction(
- actions.receiveLabelsFailure,
- {},
- state,
- [{ type: types.RECEIVE_SET_LABELS_FAILURE }],
- [],
- );
- });
-
- it('shows flash error', () => {
- actions.receiveLabelsFailure({ commit: () => {} });
-
- expect(createAlert).toHaveBeenCalledWith({ message: 'Error fetching labels.' });
- });
- });
-
- describe('fetchLabels', () => {
- let mock;
-
- beforeEach(() => {
- mock = new MockAdapter(axios);
- state.labelsFetchPath = 'labels.json';
- });
-
- afterEach(() => {
- mock.restore();
- });
-
- describe('on success', () => {
- it('dispatches `requestLabels` & `receiveLabelsSuccess` actions', () => {
- const labels = [{ id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }];
- mock.onGet(/labels.json/).replyOnce(200, labels);
-
- return testAction(
- actions.fetchLabels,
- {},
- state,
- [],
- [{ type: 'requestLabels' }, { type: 'receiveLabelsSuccess', payload: labels }],
- );
- });
- });
-
- describe('on failure', () => {
- it('dispatches `requestLabels` & `receiveLabelsFailure` actions', () => {
- mock.onGet(/labels.json/).replyOnce(500, {});
-
- return testAction(
- actions.fetchLabels,
- {},
- state,
- [],
- [{ type: 'requestLabels' }, { type: 'receiveLabelsFailure' }],
- );
- });
- });
- });
-
- describe('requestCreateLabel', () => {
- it('sets value `state.labelCreateInProgress` to `true`', () => {
- return testAction(
- actions.requestCreateLabel,
- {},
- state,
- [{ type: types.REQUEST_CREATE_LABEL }],
- [],
- );
- });
- });
-
- describe('receiveCreateLabelSuccess', () => {
- it('sets value `state.labelCreateInProgress` to `false`', () => {
- return testAction(
- actions.receiveCreateLabelSuccess,
- {},
- state,
- [{ type: types.RECEIVE_CREATE_LABEL_SUCCESS }],
- [],
- );
- });
- });
-
- describe('receiveCreateLabelFailure', () => {
- it('sets value `state.labelCreateInProgress` to `false`', () => {
- return testAction(
- actions.receiveCreateLabelFailure,
- {},
- state,
- [{ type: types.RECEIVE_CREATE_LABEL_FAILURE }],
- [],
- );
- });
-
- it('shows flash error', () => {
- actions.receiveCreateLabelFailure({ commit: () => {} });
-
- expect(createAlert).toHaveBeenCalledWith({ message: 'Error creating label.' });
- });
- });
-
- describe('createLabel', () => {
- let mock;
-
- beforeEach(() => {
- mock = new MockAdapter(axios);
- state.labelsManagePath = 'labels.json';
- });
-
- afterEach(() => {
- mock.restore();
- });
-
- describe('on success', () => {
- it('dispatches `requestCreateLabel`, `fetchLabels` & `receiveCreateLabelSuccess` & `toggleDropdownContentsCreateView` actions', () => {
- const label = { id: 1 };
- mock.onPost(/labels.json/).replyOnce(200, label);
-
- return testAction(
- actions.createLabel,
- {},
- state,
- [],
- [
- { type: 'requestCreateLabel' },
- { payload: { refetch: true }, type: 'fetchLabels' },
- { type: 'receiveCreateLabelSuccess' },
- { type: 'toggleDropdownContentsCreateView' },
- ],
- );
- });
- });
-
- describe('on failure', () => {
- it('dispatches `requestCreateLabel` & `receiveCreateLabelFailure` actions', () => {
- mock.onPost(/labels.json/).replyOnce(500, {});
-
- return testAction(
- actions.createLabel,
- {},
- state,
- [],
- [{ type: 'requestCreateLabel' }, { type: 'receiveCreateLabelFailure' }],
- );
- });
- });
- });
-
- describe('updateSelectedLabels', () => {
- it('updates `state.labels` based on provided `labels` param', () => {
- const labels = [{ id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }];
-
- return testAction(
- actions.updateSelectedLabels,
- labels,
- state,
- [{ type: types.UPDATE_SELECTED_LABELS, payload: { labels } }],
- [],
- );
- });
- });
-
- describe('updateLabelsSetState', () => {
- it('updates labels `set` state to match `selectedLabels`', () => {
- testAction(
- actions.updateLabelsSetState,
- {},
- state,
- [{ type: types.UPDATE_LABELS_SET_STATE }],
- [],
- );
- });
- });
-});